Powershell - использование сети не работает с переменными

Я пытаюсь запустить скрипт, который сопоставляет сетевые диски при входе в систему. Как правило, я использую get-content с | convertfrom-stringdata, чтобы поместить мои параметры (букву диска и путь) в хеш.

Моя проблема заключается в следующем:

net use /persistent:no $driveletter $networkpath

результат с ошибкой. Когда я заменяю $networkpath фактическим путем (\\server\share\folder), все работает.

Кто-нибудь знает, что там делать? Помощь приветствуется. Если какой-либо информации не хватает, я добавлю ее, как только смогу!

Привет,

Бларх

EDIT: больше кода для лучшего понимания проблемы

$hash = get-content C:\temp\file.txt | convertfrom-stringdata
    foreach ($keys in $hash.keys) {
    $hashtwo = $hash.$keys -split ("=")
    net use /persistent:no $hashtwo[1] $hashtwo[0]
}

Мой текстовый файл выглядит так: key = \\\\server\\share\\folder =G:


person blaargh    schedule 17.12.2015    source источник
comment
На самом деле не вижу проблемы с этим на поверхности. Вы уверены, что $networkpath содержит то, что, по вашему мнению, делает? Содержит ли он пробелы? Если вы echo "~$networkpath~" что вы получите?   -  person briantist    schedule 17.12.2015
comment
$driveletter = "x:" $networkpath = \\server\share` net use /persistent:no $driveletter $networkpath у меня тоже отлично работает   -  person Avshalom    schedule 17.12.2015
comment
К сожалению, это так не работает. Цитаты обязательны? Позвольте мне добавить сюда еще немного кода, чтобы дать вам представление о том, где может быть проблема.   -  person blaargh    schedule 18.12.2015
comment
Кстати, при повторении $networkpath или $driveletter всегда отображается правильный контент.   -  person blaargh    schedule 18.12.2015
comment
@blaargh Добавьте Write-Host "'$($hashtwo[1])' '$($hashtwo[0])'", чтобы убедиться, что переменные не имеют лишнего места.   -  person user4003407    schedule 18.12.2015
comment
@PetSerAl ОГРОМНОЕ спасибо тебе. Позади пути был пробел, его удаление заставило проблему исчезнуть. Я должен тебе, приятель!   -  person blaargh    schedule 18.12.2015
comment
Я скопировал ваш ответ и дал вам кредит, я новичок на этой доске и надеюсь, что сделал это правильно. Если нет, подскажите, пожалуйста, как правильно отметить свой комментарий как ответ. Спасибо. :)   -  person blaargh    schedule 18.12.2015
comment
@blaargh Меня не особо волнуют абстрактные интернет-точки, не стесняйтесь просто принять свой собственный ответ.   -  person user4003407    schedule 18.12.2015


Ответы (1)


PetSerAl нашел решение:

@blaargh Добавьте Write-Host "'$($hashtwo[1])' '$($hashtwo[0])'", чтобы убедиться, что переменные не имеют лишнего места.

person blaargh    schedule 17.12.2015