Как запустить предыдущую команду по индексу истории в командной строке Windows

504
coderrick

Я хочу знать, как выполнить предыдущую команду в истории по индексу, например, как это делается в Linux (то есть! [Index]).

Да, F9 в cmd вызывает всплывающее окно, которое позволяет мне войти в индекс, но как мне сделать это прямо из командной строки без диалогового окна? Есть ли способ сделать это в CMD без сторонних загрузок?

Кроме того, есть ли способ хорошо отобразить историю команд с индексами? Кроме того, doskey /historyотображает список ранее выполненных команд, но в нем также нет списка индексов.

1

1 ответ на вопрос

0
DavidPostill

Как мне сделать это (запустить по индексу) из командной строки без диалогового окна?

Это невозможно при использовании сторонних программ.

Вы можете попробовать использовать clink :

Clink сочетает в себе встроенную оболочку Windows cmd.exe с мощными функциями редактирования командной строки библиотеки GNU Readline, которая обеспечивает богатые возможности завершения, истории и редактирования строк. Readline наиболее известен своим использованием в хорошо известной оболочке Unix Bash, стандартной оболочке для Mac OS X и многих дистрибутивах Linux. Характеристики

  • Редактирование той же строки, что и в Bash (из библиотеки Readline GNU).
  • Постоянство истории между сессиями.
  • Контекстно-зависимое завершение;
    • Исполняемые файлы (и псевдонимы).
    • Каталог команд.
    • Переменные среды
    • Сторонние инструменты; Git, Mercurial, SVN, Go и P4.
  • Новые сочетания клавиш;
    • Вставить из буфера обмена (Ctrl-V).
    • Инкрементальный поиск в истории (Ctrl-R / Ctrl-S).
    • Мощное завершение (TAB).
    • Отменить (Ctrl-Z).
    • Автоматическая «cd ..» (Ctrl-Alt-U).
    • Расширение переменной среды (Ctrl-Alt-E).
    • (нажмите Alt-H, чтобы узнать больше ...)
  • Завершение сценария с Lua.
  • Цветная и скриптовая подсказка.
  • Автоответчик на запрос «Завершить пакетное задание?».

Есть ли способ отобразить историю команд с индексами?

doskey /history отображает список ранее выполненных команд, но не перечисляет индексы.

Нажмите, F7чтобы перечислить историю с индексами:

enter image description here

Вы также можете посмотреть на использование:

F5 Прокрутите историю введенных команд (↑).

F8 Перемещаться назад по истории команд, но отображать только команды, соответствующие текущему тексту, в командной строке.

Исходная синтаксическая клавиатура


Дальнейшее чтение