Расширяем возможности CMD

Если сравнивать возможности CMD с оболочками из мира Unix — например, BASH, становятся очевидны ее ограничения. Это не удивительно — в Linux и Unix системах изначально командная строка была основным инструментом для работы и постоянно совершенствовалась, тогда как для Windows командная строка была лишь вспомогательным инструментом.

Чтобы расширить возможности командной строки Windows,.нам поможет clink. Это утилита расширяющая возможности cmd.exe. Вот некоторые ее фичи:

  • Автодополнение по нажатию Tab. Возможности автодополнения могут быть расширены за счет собственных скриптов на Lua
  • Вставка текста из буфера обмена по нажатию Ctrl-V
  • Работа с историей команд. Возможность поиска по истории — вызывается Ctrl-R и Ctrl-S. Поддержка выражений, таких как !!, !<string> и !$
  • Сохранение истории предыдущих сессий

Linux утилиты в CMD

После установки cmd себя ведет почти как bash.

Кроме этого можно добавить в Windows систему Unix утилиты — такие, как cat, ls, tail, diff, grep, less, sort, wget и другие.

Некоторые утилиты имеют свои Windows-аналоги, например, вместо grep можно использовать findstr, а некоторые аналогов не имеют и могут заметно поднять продуктивность при использовании командной строки.

Для установки утилит командной строки в Windows систему есть готовый набор программ UnxUtils. Набор включает в себя множество популярных в Unix и Linux инструментов командной строки и несколько дополнительных программ.

К дополнительным программам относятся pclip.exe и gclip.exe предназначенные для работы с буфером обмена Windows. Например вот так: pclip | sed "s/string1/string2/g" | gclip можно заменить все вхождения string1 на string2 в тексте хранящемся в буфере обмена.

Для того чтоб получить всё это на свою Windows-машину нужно скачать архив UnxUtils.zip, распаковать его содержимое в какой-то каталог и добавить в переменную среды PATH путь к usr\local\wbin\, т.к. именно там хранятся исполняемые файлы.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *