Если я хочу перейти в папку с длинным и труднонабираемым именем, есть ли способ использовать «cd» с каким-то сокращенным именем этой папки, чтобы избавиться от ненужной работы?
решение1
Если вы знаете, что имя уникально после нескольких набранных букв, вы можете сделать так — например, перейти в папку «FooBarBaz»:
cd Foo*
Глобал *
расширится до имен всех папок, начинающихся с Foo
, и cd
перейдет к первой найденной папке.
То же самое работает и в обратную сторону, или если известная вам часть находится в середине имени папки:
cd *Baz
cd *Bar*
Это, вероятно, требует наименьшего количества нажатий клавиш. Вы можете просто нажать, Enterи он автоматически расширится.
Вы можете сделать еще короче, если установите autocd
опцию, предполагая, что вы используете Bash, с помощью shopt -s autocd
. Вам нужно будет только ввести имя каталога, без cd
оболочки cd
для него. Например:
shopt -s autocd
Foo*
Конечно, вы можете добавить эту опцию в файл конфигурации вашей оболочки, чтобы она загружалась автоматически (например, ~/.bash_profile
или ~/.bashrc
,в зависимости от того, что вы используете).
решение2
Вы можете использовать Tab ↹клавишу для автоматического завершения частично введенных имен файлов.
решение3
Вы можете попробовать использовать zsh, у него есть расширенные возможности завершения команд.
cd /u/sh/lo + tab = cd /usr/share/locale
Также мы можем использовать псевдонимы хэша zsh и другие магические функции zsh)
https://github.com/robbyrussell/oh-my-zsh https://github.com/zsh-users/zsh-completions