Есть ли лучший (ближе к домашней строке на клавиатуре) ярлык домашнего каталога в bash, чем тильда?

Мне не нравится тянуться к клавише тильды ~ так часто, когда я указываю пути к файлам и программам относительно домашнего каталога пользователя в командной строке. У кого-нибудь есть советы по сокращению количества нажатий клавиш?

0
задан 15 April 2011 в 19:44

1 ответ

Вы не можете устранить ~ полностью, но по крайней мере существуют некоторые доступные обходные решения.

Эти обходные решения не могут всегда быть применимыми, но для других случаев, это может быть действительно полезно:

  • Прежде, чем сделать команду, измените свое использование каталога cd (без аргументов). Это изменяет Ваш рабочий каталог на ~.
  • Если часто необходимо изменять рабочий каталог на папку в домашней папке, используйте CDPATH переменная в ударе. Выполните следующую команду для уменьшения cd ~/folder кому: cd folder, но все еще позвольте изменяться на каталог folder в текущем каталоге, если существуют.

    CDPATH=.:~
    

    Для внесения этого изменения персистентным добавьте строку к ~/.bashrc. Как его имя может предположить, оно только работает на cd команда в ударе.

  • Используйте $HOME переменная, если Вы действительно хотите избежать ~, в случае, если ключ дал бы Вам поражение электрическим током, например. Это особенно полезно в случаях, где расширение тильды не произошло бы между кавычками, например ("~")
  • Создайте функцию для команды. Если часто необходимо копировать файлы в каталог в корневом каталоге как в cp file ~/archive, можно выполнить следующий код для создания функции:

    cph(){ cp "$1" "$HOME/$2";}
    

    и используйте его как:

    cph file archive
    

    Обратите внимание, что Вы не можете передать аргументы или несколько файлов к этой функции, для которой нужна дополнительная тонкая настройка. Как с CDPATH взлом, можно вставить его Ваш ~/.bashrc файл для создания этого персистентным.

0
ответ дан 15 April 2011 в 19:44

Другие вопросы по тегам:

Похожие вопросы: