Usuário com melhor resposta
Extrair String de Uma Linha Dentro de Um Arquivo

Pergunta
-
Bom dia Pessoal,
Estou criando um script para fazer backup de alguns diretorios via powershell, porém para um determinado diretório, eu quero acessar um arquivo, ler uma linha e retornar uma string com parte da linha.
Arquivo XPTO tem a seguinte estrutura:
;===============================================================
;--------------------AMBIENTE DE PRODUÇÃO-----------------------
;===============================================================
[C4P12LEAD]
SourcePath=E:\Outsourcing\Clientes\c4p12lead\apo\20180828
RootPath=E:\Outsourcing\Clientes\c4p12lead\protheus-data
CtreeRootPath=E:\Outsourcing\Clientes\c4p12lead\protheus-data
StartPath=\system\
x2_path=
RpoDb=top
RpoLanguage=por
RpoVersion=120
LocalFiles=ctree
Trace=0Preciso retornar o caminho da linha que contém o SourcePath (RootPath=E:\Outsourcing\Clientes\c4p12lead\apo\20180828)
Preciso retornar em uma variável o caminho: E:\Outsourcing\Clientes\c4p12lead\apo\20180828
Algo mais ou menos assim:
$apo = E:\Outsourcing\Clientes\c4p12lead\apo\20180828
Como farei isso?
Alguém poderia me ajudar por favor?
Obrigado.
Respostas
-
Para utilizar substring, você precisa uma variável do tipo string. Nesse caso pode fazer isso:
[string]$SourceApo = Get-Content $SourceFolder\bin[...]
ou
Pode remover o trecho que não precisa do caminho
$apo = $SourceApo -replace "SourcePath=",""
- Editado Fernando_dos_Santos terça-feira, 26 de maio de 2020 16:09
- Marcado como Resposta Antonio Remigio terça-feira, 26 de maio de 2020 16:42
Todas as Respostas
-
-
-
O metodo $a.Substring() não funciona mais?
Tentei utiliza-lo e deu a mensagem abaixo:
$apo = $SourceApo.Substring(12,50)
Falha na invocação do método porque [Microsoft.PowerShell.Commands.MatchInfo] não contém um método denominado
'Substring'.
No linha:1 caractere:1
+ $apo = $SourceApo.Substring(12,50)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound -
Para utilizar substring, você precisa uma variável do tipo string. Nesse caso pode fazer isso:
[string]$SourceApo = Get-Content $SourceFolder\bin[...]
ou
Pode remover o trecho que não precisa do caminho
$apo = $SourceApo -replace "SourcePath=",""
- Editado Fernando_dos_Santos terça-feira, 26 de maio de 2020 16:09
- Marcado como Resposta Antonio Remigio terça-feira, 26 de maio de 2020 16:42
-