Оболочки командной строки часто предоставляют способ автоматического завершения длинных имен файлов или команд, ускоряя ввод команд и предоставляя советы. Оболочка Windows PowerShell позволяет заносить имена файлов и командлетов нажатием клавиши Tab.
Примечание. | |
Автозавершение контролируется внутренней функцией TabExpansion. Так как эта функция может быть изменена или переопределена, это рассмотрение служит в качестве руководства по поведению конфигурации Windows PowerShell по умолчанию. |
Для автоматического ввода имени файла или пути из имеющихся возможностей выбора введите часть имени и нажмите клавишу Tab. Оболочка Windows PowerShell автоматически расширит имя до первого найденного ею совпадения. При повторении нажатия клавиши Tab производится циклический переход по имеющимся возможностям выбора.
Автозавершение имен командлетов выглядит несколько по-иному. Для автозавершения имени командлета нужно ввести всю первую часть имени (глагол) и дефис, следующий за этой частью. В случае частичного совпадения можно ввести больший фрагмент имени. Например, при вводе get-co и последующем нажатии клавиши Tab оболочка Windows PowerShell автоматически расширяет это до командлета Get-Command (отметим, что оболочка изменяет также регистр букв в их стандартную форму). При повторном нажатии клавиши Tab оболочка Windows PowerShell заменяет это имя на единственное другое соответствующее имя командлета, а именно на Get-Content.
В одной и той же строке функцию автозавершения можно использовать несколько раз. Например, автозавершение можно использовать для имени командлета Get-Content, введя:
PS> Get-Con<Tab>
При нажатии клавиши Tab команда расширяется до:
PS> Get-Content
После этого можно частично задать путь к файлу журнала Active Setup и вновь использовать автозавершение:
PS> Get-Content c:\windows\acts<Tab>
При нажатии клавиши Tab команда расширяется до:
PS> Get-Content C:\windows\actsetup.log
Примечание. | |
Ограничением, накладываемым на процесс автозавершения, является то, что знаки табуляции всегда интерпретируются как попытки завершить слово. При копировании и вставке примеров команд в консоль Windows PowerShell убедитесь в том, что образец не содержит знаков табуляции, так как в этом случае результаты могут быть непредсказуемыми, и почти наверняка будут отличаться от предполагаемых. |