В сценарии оболочки Unix можно использовать что-то вроде этого для разбора аргументов в скрипт:Как перебирать аргументы скрипта?
while [ $1 ]; do
#
# do stuff
#
shift
done
Как реализовать что-то подобное в PowerShell?
В сценарии оболочки Unix можно использовать что-то вроде этого для разбора аргументов в скрипт:Как перебирать аргументы скрипта?
while [ $1 ]; do
#
# do stuff
#
shift
done
Как реализовать что-то подобное в PowerShell?
Для необъявленных параметров, вы можете использовать $Args
automatic variable в @AnsgarWeichers предлагает ни с одним из методов Foreach (смотри ниже), но я бы поспорил метод Unix вы описываете против философии PowerShell. PowerShell - это среда .Net, поэтому все является принципиально объектом, а не принципиально символьной строкой.
Вы должны определять свои параметры, указывая им тип и, прежде всего, указывая имя. См. about_Parameters, about_Functions, about_Functions_Advanced и about_Functions_Advanced_Parameters. Сценарий может быть написан для работы как командлет или функция, поэтому вы обращаетесь к этим справочным документам.
Если параметр законно массив, вы можете перемещаться по нему с либо foreach statement:
foreach ($item in $MyParameterArray) {
[...]
}
Или с помощью ForEach-Object cmdlet:
$MyParameterArray | ForEach-Object {
[...]
}
вы на самом деле не объяснить свою проблему, я думаю , Во всяком случае, трудно понять, о чем вы спрашиваете. –
Вообще-то, я не согласен с тем, что вопрос нуждается в том, чтобы * это разъяснение, хотя оно неловко сформулировано. Он явно хочет знать, может ли он перебирать список аргументов сценария PowerShell, как это сделано в оболочках Unix/Linux. –
В PowerShell обрабатывается набор аргументов '$ args' с циклом, например. 'foreach ($ a в $ args) {...}' или '$ args | % {...} '. –