『Bash Completionでbashの補完機能を強力にする - 理想未来はどうなった?』
http://d.hatena.ne.jp/pcmaster/20101021/p1
こちらで紹介されていたbashでのホスト名のタブ補完設定がクソ便利だったので備忘録として。
一回この設定にしたら手放せません。
上記URL先の情報をそのまま自分の環境へ入れてみました。
例えば、LinuxやMacのターミナルからsshログインする際、
ssh example.com
と打つ場合、「ssh example.com」とホスト名全てを打ち込んでいたんですが、
『Bash Completion』を導入すると「ssh e」くらいでタブキーを押すと補完してくれる!!
known_hostsに入ると補完対象になります。
何が便利ってsshだけじゃなくてpingやdigコマンドでも補完されるっていう点。
RedHat系では、rpmforgeを有効にすることでyumでインストールが可能でした。
sudo yum install bash-completion.noarch
MacOSXでは
sudo brew install bash-completion
こんな感じのMacPortsコマンドでインストールした後、
自分のアカウントのホームディレクトリの
.bash_profile
へ以下を追記
if [ -f /opt/local/etc/bash_completion ]; then . /opt/local/etc/bash_completion fi
こんな感じ。
この設定の後、
~/.ssh/config
を以下のように編集してやれば完全にログインが簡単になります。
Host * User tsunokawa IdentityFile ~/.ssh/id_rsa
特定ホストだけポート番号を指定したい場合
Host example.com HostName example.com User tsunokawa Port 8022 IdentityFile ~/.ssh/id_rsa
これらの設定については↓を参考にさせて頂きました。
『ウノウラボ by Zynga Japan: 快適なsshクライアント生活』
http://labs.unoh.net/2010/03/ssh_config.html