Если вы делаете это в оболочке, и вы хотите одну гильзу, попробуйте следующее:
Get-ChildItem "\\$(Read-Host)\share" -recurse | Measure-Object length -sum
Это не будет производить сообщение с просьбой ввод, но сохраняет назначение переменной, которая вам может не понадобиться, и если вы используете это из оболочки, то вы знаете, что вход необходим, в любом случае!
Также двойные кавычки будет означать переменную вычисляется так:
$hello = "Hello World"
Write-Host "$hello"
Hello world
Или, как Кит Хилл отметил:
$hello = "Hello World"
Write-Host $hello
Hello World
Где, как одинарные кавычки не будут оценивать переменную так:
$hello = "Hello World"
Write-Host '$hello'
$hello
Так что если вы используете переменные и у вас есть пробелы в пути, используйте «».
Интересно, если это проблема с версией powershell, потому что я не могу заставить это работать. Я получаю: «Не удается найти путь» \\ имя_сервера \ C $ \ имя_папки ', потому что его не существует. " Ошибка –
Ну, я загрузил v 2.0, и я до сих пор не могу заставить это работать. Похоже на то, что нужно-работать. Я должен упустить что-то очевидное здесь. –
Не знаю. Он работает для меня на V2 'gci \\ $ servername \ c $ \ users'. BTW, если имя_сервера является переменной, оно должно быть '\\ $ servername \ c $'. –