Быстрый переход в каталог из оболочки

Быстрый переход в каталог из оболочки

Текстовые редакторы, такие как vim и emacs, имеют плагины, такие как ace jump, avy, которые позволяют вам нажать символ, после чего он подсветит каждое вхождение этого символа с помощью временной привязки клавиш, затем вы можете нажать эту привязку клавиш, чтобы перейти непосредственно к нему.

Интересно, существует ли что-то подобное для оболочек (например, bash), чтобы быстро переходить к определенному каталогу без необходимости cdперебирать каталоги? Может быть, что-то, что будет перечислять каталоги на определенную глубину, ждать ввода символа, выделять экземпляры символа с помощью последовательности клавиш и cdвходить в него при нажатии последовательности?

Если чего-то подобного еще не существует, насколько легко это создать?

решение1

fzfделает это. Это нечеткое дополнение / помощник выбора файлов. Его основное применение — выбор файлов из большого списка (например, find . -type f | fzf > selected).

После установки и загрузки в оболочку вы можете нажать , AltCчтобы открыть окно, в котором вы можете ввести нечеткую строку для поиска каталогов. Когда вы выбираете один и нажимаете Enter, fzf перейдет cdв этот каталог.

Для автозаполнения имен файлов таким же образом, вы можете нажать CtrlT. Для поиска по истории нажмите CtrlR.

решение2

Может быть, это не совсем то, что вам нужно, но я думаю, стоит попробовать.ВДК. Он создает "базу данных" (один текстовый файл), в которой хранится список каталогов. wcd fooКоманда показывает список каталогов, которые содержат foo, и вы можете выбрать один из них.

Еще один похожий вариант —автопрыжок.

решение3

Существуют различные оболочки и расширения оболочек, которые поддерживаютавтозаполнение частичного путиирыбаодин из них

Например, cd /v/l/fsck Tabпреобразует путь в /var/log/fsck/. cd /u/s/appl Tabрасширяет путь до/usr/share/applications/

Некоторые другие альтернативы:

Смотрите также

Связанный контент