ブラウザのブックマークを整理しつつ、サイトの過去記事を見返していたら、以下の記事を見つけました。
Quick Zsh Tip: ディレクトリのブックマーク
Y CombinatorのHacker Newsを見てたら、Bashにおけるディレクトリのブックマーク方法について書かれてました。
これでcdの手間がすごい省ける!
Quick Bash Tip : Directory Bookmarks
"これでcdの手間がすごい省ける!"という言葉に惹かれました。Link先ではzsh版の修正内容が記載されておりますが、ここではBash環境での導入方法をメモとして記します。Bashユーザの間では有名だと言われているBashmarksです。
Bashmarks
Bashmarks - directory bookmarks for the shell
Github huyng/bashmarks
ディレクトリをブックマークすることで、ディレクトリ間の移動が簡単・快適になります。
導入手順
上記ページのinstallationに従ってコマンドを打ちます。
$ git clone https://github.com/huyng/bashmarks
$ cd bashmarks
$ make install
$ vim .bashrc
// .bashrc or .bash_profileに"source ~/.local/bin/bashmarks.sh"を追記します
+ # Bashmarks
+ source ~/.local/bin/bashmarks.sh
$ source .bashrc
使用例
Shell Commandsを確認します。
$ s <bookmark_name> - Saves the current directory as "bookmark_name"
$ g <bookmark_name> - Goes (cd) to the directory associated with "bookmark_name"
$ p <bookmark_name> - Prints the directory associated with "bookmark_name"
$ d <bookmark_name> - Deletes the bookmark
$ l - Lists all available bookmarks
s <bookmark_name>
で保存、cdしたいときはg <bookmark_name>
で移動、
p <bookmark_name
はpwdと一緒、d <bookmark_name>
は保存したブックマークの削除、
l
でブックマークのリストを表示します。
$ cd /var/www/
$ s webfolder
$ cd /usr/local/lib/
$ s locallib
$ l
webfolder /var/www/
locallib /usr/local/lib/
$ g web<tab> // tab補完が効きます
$ g webfolder
リスト表示の"l"は、aliasの設定がしてあるかもしれませんので、必要に応じてコメントアウトするといいと思います。
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
# alias l='ls -CF'
ブックマークしたものは、HOMEディレクトリの.sdirs
にあります。
$ vim .sdirs
export DIR_webfolder="/var/www/"
export DIR_locallib="/usr/local/lib/"