Проблемы возврата функций Powershell [дубликаты]

Это может быть старым, но давайте ответим на это.

Я использую top.close (), чтобы закрыть вкладку. window.close () или другое открытое ... close не работает для меня.

4
задан Ricardo Polo 16 June 2012 в 05:30
поделиться

1 ответ

Функции ведут себя как командлеты. То есть вы не набираете dir (c: \ temp). Функции также принимают параметры как разделенные пробелы и как командлеты, поддерживают позиционные, именованные и необязательные параметры, например:

Greet Recardo 5
Greet -times 5 -name Ricardo

PowerShell использует (), чтобы вы могли указывать такие выражения:

function Greet([string[]]$names, [int]$times=5) {
    foreach ($name in $names) {
        1..$times | Foreach {"Hi $name"}
    }
}

Greet Ricardo (1+4)

Great Ricardo    # Note that $times defaults to 5

Вы также можете указать простые массивы с помощью списка, разделенного запятыми, например:

Greet Ricardo,Lucy,Ethyl (6-1)

Итак, когда вы передаете что-то вроде ("Ricardo",5), которое оценивается как одно значение параметра, которое представляет собой массив, содержащий два элемента "Ricardo" и 5. Это будет передано параметру $name, но тогда не будет значения для параметра $times.

Единственный раз, когда вы используете список параметров в скобках, является вызов методов .NET, например:

"Hello World".Substring(6, 3)
13
ответ дан Keith Hill 18 August 2018 в 19:10
поделиться
Другие вопросы по тегам:

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