Что такое "выход" в PowerShell?
вы можете выйти из PowerShell команду exit. Пока все хорошо. Но что именно это?
PS Home:> gcm exit
Get-Command : The term 'exit' is not recognized as the name of a cmdlet, function, script file, or operable program. Ch
eck the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:4
+ gcm <<<< exit
+ CategoryInfo : ObjectNotFound: (exit:String) [Get-Command], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Commands.GetCommandCommand
таким образом, это не командлет, функция, скрипт или программа. Это оставляет вопрос что именно так и есть.
к сожалению, это также означает, что нельзя создавать псевдонимы exit:
PS Home:> New-Alias ^D exit
PS Home:> ^D
Cannot resolve alias '♦' because it refers to term 'exit', which is not recognized as a cmdlet, function, operable prog
ram, or script file. Verify the term and try again.
At line:1 char:2
+ ♦ <<<<
+ CategoryInfo : ObjectNotFound: (♦:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : AliasNotResolvedException
есть ли еще такие команды, нет команды?
ETA: просто для справки: я знаю, что могу просто обернуть это в функции. В моем профиле есть строки
# exit with Ctrl+D
iex "function $([char]4) { exit }"
в них. Мой вопрос был просто знать, что именно эта команда.
1 ответ:
это зарезервированное ключевое слово (например, return, filter, function, break).
кроме того, согласно разделу 7.6.4 Брюса Пайетта Powershell в действии:
но что происходит, когда вы хотите, чтобы скрипт выходил из функции, определенной в этом скрипте? ... чтобы сделать это проще, Powershell имеет выход ключевого слова.
конечно, как другие указали выходит, это не трудно сделать то, что вы хотите, обернув выход в функцию:
PS C:\> function ex{exit} PS C:\> new-alias ^D ex
Comments