Что такое "выход" в 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 }"


в них. Мой вопрос был просто знать, что именно эта команда.

747   1  

1 ответ:

это зарезервированное ключевое слово (например, return, filter, function, break).

ссылка

кроме того, согласно разделу 7.6.4 Брюса Пайетта Powershell в действии:

но что происходит, когда вы хотите, чтобы скрипт выходил из функции, определенной в этом скрипте? ... чтобы сделать это проще, Powershell имеет выход ключевого слова.

конечно, как другие указали выходит, это не трудно сделать то, что вы хотите, обернув выход в функцию:

PS C:\> function ex{exit}
PS C:\> new-alias ^D ex

Comments

    Ничего не найдено.