Concatenando variáveis ​​no PowerShell


9

Estou tentando concatenar duas variáveis ​​no Powershell para formar um caminho completo de arquivo e nome de arquivo para salvar um arquivo de texto.

Eu tenho duas variáveis

  • $ Log_path e
  • $ Log_name

Estou tentando unir as duas variáveis ​​neste pedaço de código:

$ objWorkbook = $ objExcel.Workbooks.Open $ Log_path "\ $ Log_name"

Não consigo encontrar a combinação correta de funções?

Também é necessário adicionar "\" entre as variáveis ​​Log_path e Log_name para formatar corretamente o caminho do arquivo.

Respostas:


5

Você pode usar o Join-Path e ele colocará a barra de diretório para você.

$objWorkbook = $objExcel.Workbooks.Open (Join-Path $Log_path $Log_name)

Ele lida com a lógica se o pai $ Log_Path já tiver ou não a barra.

>join-path c:\temp test.txt
c:\temp\test.txt

>join-path c:\temp\ text.txt
c:\temp\test.txt

12
$path = "C:\folder"
$name = "file.exe"
$fullname = $path + "\" + $name
$fullname

(ou)

$fullname = "$path\$name"

mas não

$fullname = '$path\$name'

Resultado

C: \ pasta \ arquivo.exe

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.