@IT_Otdel

Как подставить переменную в путь к файлу (powershell)?

Есть такой небольшой скрипт, он должен из двух .txt файлов брать данные и подставлять их в путь что бы попасть куда нужно.
$pc_number = (Get-Content C:\test\pc_name_stm.txt)
$user_name = (Get-Content C:\test\stm_name.txt)
New-Item -ItemType SymbolicLink -Path \\$pc_number\c$\Users\$user_name\Desktop\Полезные_ссылки_СТМ -Target \\192.168.123.220\Shared\СТМ\Полезные_ссылки_СТМ
Всё отлично работает если я не использую переменные в пути, но когда их ставлю выдаёт ошибку
New-Item : Синтаксическая ошибка в имени файла, имени папки или метке тома
C:\test\test1 — копия.ps1:3 знак:1
+ New-Item -ItemType SymbolicLink -Path \\$pc_number\c$\Users\$user_nam ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [New-Item], Win32Exception
+ FullyQualifiedErrorId : System.ComponentModel.Win32Exception,Microsoft.PowerShell.Commands.NewItemCommand
Подскажите, с чем связано?
  • Вопрос задан
  • 528 просмотров
Решения вопроса 1
@Stariyded
Сетевой админ
Попробуйте вывести собранный из переменных путь на экран - увидите, где что теряется.
Скорее всего вам нужно складывать в одну тестовую строку значение переменных и простой текст - для этого их надо складывать оператором типа "." - как минимум так работает в линуксах, может powershell тоже так обрабатывает строки
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Вам нужно почитать про одиночные и двойные кавычки в Powershell
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы