Повторне завершення вкладки вкладки назви файлів, що не обертається, за допомогою PowerShell


8

Чи можливо в Windows за допомогою PowerShell зробити так, щоб пропозиція щодо імені файлу (за допомогою Tabключа) працювала як з bash під Linux?

Давайте припустимо , каталог містить 3 директорії: example1, exampleі examination.

У Windows (за замовчуванням), якщо ви введете cd exі Tab, він автоматично запропонує cd .\examination. Наступні використання Tabповернеться пропозицію між example1, exampleі examination.

Використання Баша ( як правило , під Linux), якщо ви друкуєте cd exі Tabвін буде заповнюватися автоматично до символу , де імена файли починають відрізнятися: cd exam. Інше використання Tabпотім пропонує, які каталоги доступні:

$ cd exam
examination/ example1/    example2/

Потім, якщо ви введете pі Tab, він автоматично завершиться exampleі так далі (тут пропонується вибір між example1і example2).

Чи є спосіб, щоб змусити пропозицію імені працювати в такому пошуку по типу дерева, замість того, щоб обертатись через імена?

(Мене в основному цікавлять імена файлів. Bash також може уточнити цей вибір залежно від типу файлу, наприклад, лише каталогі для cd, що було б добре, але достатньо самого вибору імені файлів.)


Відповіді:


5

Поведінка завершення за замовчуванням є результатом використання вікна команд, яке обробляє введення з клавіатури.

Що стосується PowerShell v3, ISE варто розглядати як штатну оболонку та має сучасну поведінку щодо завершення (і колоризацію!).

Якщо ви дійсно хочете завершення стилю BASH у вікні команди PowerShell, отримайте PSReadline :

https://github.com/lzybkr/PSReadLine

Тут є старіший, менш популярний і незбережений проект, який також називається PSReadline: http://nivot.org/nivot2/post/2012/09/12/Emulating-Bash-GNU-Readline-with-PowerShell-30.aspx http : //nivot.org/blog/post/2012/09/12/Emulating-Bash-GNU-Readline-with-PowerShell-30

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.