9

Я ищу альтернативу командной строки, которая поддерживает удобные функции терминала Linux, такие как

  • Ведение истории команд и доступ к ним с помощью клавиши со стрелкой вверх.
  • Регистрация команд в файле (например: .bash_history).
  • Возможность изменения размера командного окна.
  • Позволяет использовать Ctrl+C и Ctrl+V для копирования / вставки содержимого.

Я прошел через консоль, но мне интересно, поддерживает ли она что-то помимо настройки интерфейса. Я больше ожидаю, что приглашение сохранит историю команд, чтобы мне не приходилось вводить их каждый раз.

4 ответа4

4

старая вещь называется «доски». это на самом деле довольно знакомое зрелище для нас, старых приятелей ...

проверьте его страницу помощи:

C:\Users\bubu>doskey /?
Edits command lines, recalls Windows commands, and creates macros.

DOSKEY [/REINSTALL] [/LISTSIZE=size] [/MACROS[:ALL | :exename]]
  [/HISTORY] [/INSERT | /OVERSTRIKE] [/EXENAME=exename] [/MACROFILE=filename]
  [macroname=[text]]

  /REINSTALL          Installs a new copy of Doskey.
  /LISTSIZE=size      Sets size of command history buffer.
  /MACROS             Displays all Doskey macros.
  /MACROS:ALL         Displays all Doskey macros for all executables which have
                      Doskey macros.
  /MACROS:exename     Displays all Doskey macros for the given executable.
  /HISTORY            Displays all commands stored in memory.
  /INSERT             Specifies that new text you type is inserted in old text.
  /OVERSTRIKE         Specifies that new text overwrites old text.
  /EXENAME=exename    Specifies the executable.
  /MACROFILE=filename Specifies a file of macros to install.
  macroname           Specifies a name for a macro you create.
  text                Specifies commands you want to record.

UP and DOWN ARROWS recall commands; ESC clears command line; F7 displays
command history; ALT+F7 clears command history; F8 searches command
history; F9 selects a command by number; ALT+F10 clears macro definitions.

The following are some special codes in Doskey macro definitions:
$T     Command separator.  Allows multiple commands in a macro.
$1-$9  Batch parameters.  Equivalent to %1-%9 in batch programs.
$*     Symbol replaced by everything following macro name on command line.

C:\Users\bubu>

он не хранит историю в файле, вы можете, конечно, использовать doskey /history> file и прочее, но это не так автоматизировано, как bash. Ctrl-C генерирует прерывание и поэтому не используется в консолях. даже xterm не допустит этого. (xterm использует выделение мыши как копию и щелчок правой кнопкой мыши как вставку)

в качестве альтернативы, вы можете использовать Cygwin и использовать Bash вместо ... он также работает на Windows.

2

Это довольно старый вопрос, и он остается прежним, пока я недавно не нашел отличную альтернативу командной строки под названием ConEmu.

Он поддерживает широкий спектр функций, таких как вкладки, автоматическое восстановление сеансов при перезапуске, интеграция с Power Shell и, главное, история команд. Хотя он по-прежнему не поддерживает файловую историю (таким образом, история теряется при перезапуске), но, поскольку он является инструментом с открытым исходным кодом, я планирую добавить эту поддержку (если команда Windows 10 не выдаст все обещания, которые я видел в предварительном просмотре), Спасибо всем, кто ответил.

2

Консоль может использовать не только Windows cmd.exe качестве целевой оболочки. Например, если вы загружаете порт Windows оболочки BASH, вы можете использовать его вместо консоли. Это в сочетании с дополнительными инструментами, такими как MinGW (который включает в себя порт BASH для Windows и многие из ваших любимых * nix-терминалов, таких как ls и wget) или программами GNUWin32 в вашем системном пути, может дать вам очень Unix-y консоль в Окна.

2

Попробуйте TCC/LE, который включает редактирование командной строки и историю, среди прочего. Это бесплатная версия программного обеспечения среды Take Command.

После того, как вы его установили, вы можете указать, какой аспект вы хотите записать (команды, ошибки, история) и в каком файле вы хотите их сохранить. TCC/LE можно использовать в сочетании с Console или ConEmu.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .