В терминале Ubuntu я трачу много времени на переключение в определенный каталог каждый раз, когда запускается компьютер. Есть ли способ облегчить этот процесс? Могу ли я использовать какую-нибудь горячую клавишу или быструю смену каталога (например, быстрый набор на телефоне)?
eg:
cd 1:Changes to saved directory one
command-line
Разработчик Android
источник
источник
Ответы:
Есть два варианта:
Если вы хотите быть в то время everyt каталога конкретнее вы открываете Баш терминал, отредактировать свой
~/.bashrc
файл и просто добавьте строкуcd Directory
, напримерcd ~/Desktop
.Если вы хотите иметь несколько ярлыков, вы всегда можете использовать глобальные переменные, которые вы можете установить в своем
~/.bashrc
файле следующим образом,export a=/tmp
и тогда вы сможете сделать то, кcd $a
чему вас приведет/tmp
.Помните, что после редактирования вашего
.bashrc
файла вам необходимо перезапустить терминал или открыть новый.источник
source ~/.bashrc
или, короче,. ~/.bashrc
.Также обратите внимание
autojump
, что он создает базу данных с ранее посещенными каталогами, а затем вы можете перейти к ней. Так, например, у вас естьзатем, если вы посетили его один раз, вы можете перейти к
или даже
потому что это также работает с частичными совпадениями. Если более одного каталога совпадает, вы переходите к тому, который наиболее посещен, если это не тот каталог, который вы хотели, затем повторите команду, чтобы перейти ко второму.
Однако это становится лучше! Если у вас также есть каталог
и вы делаете
и тогда TabTabTabвы получите (в порядке наиболее посещаемых)
и тогда вы можете просто нажать номер каталога, который вы хотите!
Для установки вы можете просто использовать,
sudo apt-get install autojump
а затем вам нужно добавитьк вашему
~/.bashrc
.Более подробная информация здесь: https://github.com/wting/autojump (также инструкция о том, как установить это с src, который получает самую последнюю версию)
источник
Псевдонимы Bash полезны для создания ярлыков для часто используемых команд.
В
~/.bashrc
добавьте строку, аналогичную следующей, чтобы создать псевдоним:Закройте и снова откройте терминал или запустите
source ~/.bashrc
.С этого момента вы можете просто запустить
jump1
эту длиннуюcd
команду.Смотрите также:
источник
Несмотря на то, что уже есть несколько хороших ответов, я решил упомянуть для полноты, что старые
pushd
иpopd
встроенные в Bash встроенные функции позволяют очень быстро перемещаться между каталогами по глубоким путям в вашей файловой системе. В отличие отautojump
закладок, упомянутых в burger.ga , стек каталогов, созданный с использованием,pushd
является временным.Как GNU ручных примечания ,
pushd
иpopd
являются Баш встроенных команд используются для создания временного стека каталогов , который являетсяК этому нужно привыкнуть, но в этом блоге и на этом сайте, например , есть множество полезных руководств . Для команд нет отдельных страниц управления, поскольку они включены в справочную страницу Bash, но для быстрого ознакомления вы можете просмотреть страницу GNU Bash .
Ярчайший объяснение в этой очень полезной статье , и именно так , как я использую
pushd
иpopd
:Во-первых, используйте
dirs
илиdirs -l
для просмотра каталогов в стеке иdirs -c
для очистки стека.В некотором смысле вы добавляете в закладки место, куда хотите вернуться, введя
и затем вы можете добавить больше каталогов в стек, так что вы получите список каталогов, как показано ниже, который включает в себя 3 назначенные папки и вашу
~
домашнюю папку:Вам на самом деле не нужно использовать
popd
сразу, так как это удаляет каталоги из стека; Лучше всего использоватьpushd
вращение стека, чтобы вы могли продолжать переключаться между каталогами и упорядочивать их по своему усмотрению. Подробнее об этом вращении стека смотрите на странице руководства Bash .Если у вас есть именно такое расположение стеков, как
dirs
показано в приведенном выше листинге,pushd +3
вы переключаетесь в определенную папку Pictures и размещаете ее в верхней части стека (это +3, а не +4, поскольку вы не учитываете ваше значение~
в стеке каталогов):Так что подсказка гласит:
Вы можете продолжать делать это, не удаляя их из стека, хотя любые папки,
cd
к которым вы , кроме тех, которые добавлены в стек каталоговpushd
, изменят ваш стек каталогов.После того как стек каталогов упорядочен в нужном вам порядке, вы можете использовать его
popd
для быстрого циклического перемещения по каталогам и возврата в домашнюю папку; например, изPictures
мы можем вернуться кDownloads
:и подсказка гласит
В общем, прелесть этого в том, что вы можете настроить стек каталогов и порядок элементов в нем,
pushd
а затем, скажем, у вас есть три файла для редактирования в каждом из этих каталогов, вы можете мгновенно вернуться к каждомуpopd
, удаляя их. из стека каталогов. Тогда с вашим последнимpopd
вы вернетесь к~
. Это становится особенно полезным, когда у вас есть особенно глубокие каталоги и вы можете использовать их для настройки стека каталогов, чтобы быстро перемещаться между ними.Кроме того, этот вопрос содержит несколько советов, которые могут оказаться полезными при работе в командной строке:
источник
Даже при том, что существует какой-то способ командной строки, чтобы сделать это быстрее, я лично рекомендовал бы использовать расширение Nautilus, названное
nautilus-open-terminal
.Сначала установите пакет
nautilus-open-terminal
и добавьте закладки в ваши любимые папки с помощью Nautilus. На Nautilus 3.6. * Вам нужно будет зайти в меню передач и выбрать « Добавить в закладки это местоположение» .Затем используйте закладки Nautilus для быстрого перехода в любимые каталоги, просто щелкните правой кнопкой мыши пустое место и выберите « Открыть в терминале» .
Теперь вы можете иметь как командную строку, так и файловый менеджер для быстрого доступа к вашим любимым каталогам.
источник
anc был разработан именно для этого варианта использования.
https://github.com/tobimensch/anc
Вот выдержка из README.md:
Полное раскрытие: я автор anc.
источник
Вы можете разместить псевдоним в своем файле .bashrc (или в файле конфигурации вашей любимой оболочки - они обычно находятся в вашем домашнем каталоге):
Полезная информация об использовании псевдонимов в bash находится здесь .
источник
Я создал для этого набор функций bash и добавил его в свой .bash_profile
скрипт
использование
getFolders
Используя getFolders у вас есть список сокращений, описание и расположение для каждой папки. Когда вы используете getFolders с сокращением, он выведет местоположение папки. Вы можете получить список доступных папок и их описания, просто вызвав getFolders без параметра
Пример получения пути к папке
выходы
Пример получения доступных папок.
выходы
гс
GF это ярлык для getFolders
выходы
перейти к
Перейти к простой способ перейти к выбранной папке.
выход
CD запущен в папке / path / to / alias /
/ Путь / к / псевдоним / папки>
Почему есть несколько функций
В основе Unix и Linux лежат простые многократно используемые функции, которые можно объединить в цепочку. Я предпочитаю этот метод, поскольку он не только перемещает вас в выбранное место, но и является функцией, которая по псевдониму возвращает путь. Вы можете использовать эту функцию, чтобы сделать что-нибудь с этой точки, например, cd на этот путь
источник
Попробуйте установить
CDPATH
переменную окружения в вашем .bashrc или .bash_profile. CDPATH принимает ту же форму, разделенную двоеточиями, что и другиеPATH
подобные переменные, и позволяетcd
быстро находить ваши каталоги. Например:источник
Вы можете настроить свой собственный ярлык для определенного каталога. Например, вы хотите перейти во вложенный каталог, как правило, вы делаете
Вы обычно используете команду cd, а затем вводите все имена каталогов или можете пропустить ввод (используя кнопку TAB), но это по-прежнему занимает несколько минут.
Таким образом, чтобы сэкономить ваше время, вы можете сделать его псевдоним в терминале. Одноразовая задача - создать псевдоним.
Теперь вам нужно просто использовать псевдоним ( dir-target ), чтобы перейти в целевой каталог.
источник
Самый быстрый способ, который я нашел, -
xd
это программа «Каталоги обмена», написанная голландцем Фрэнком Б. Броккеном.Он работает путем нахождения всех путей в вашей файловой системе, которые могут соответствовать введенной вами аббревиатуре, например,
ulb
могут обозначать,/usr/local/bin
если такая папка существует в вашей системе:При нажатии 2 вы находитесь
/usr/local/bin
.Это действительно старое программное обеспечение и больше не доступно в исходном месте, нет связи с автором, поэтому, чтобы предотвратить его потерю, я поместил его в репозиторий Github:
https://github.com/mrkafk/exchange_directories
источник
Я использую DirB (закладки каталогов), чтобы сделать это. Очень хорошо! http://www.linuxjournal.com/article/10585
Я изменил мой, чтобы удовлетворить мой вкус и быть проще в использовании и яснее, хотя.
источник