明けましておめでとうございます。 昨年はお世話になりました!今年もよろしくお願いします!
ということで、2017年初更新です。
今回はいつも使ってる汎用的なShellScriptコマンドを紹介します。
BashでもZshでも使えると思うので、作業が少しでも捗れば幸いです!
前提:aliasの設定方法
大体のLinuxディストリビューションやMacのターミナルはデフォルトでbashが使われていると思います。
よく分からない人は次に紹介するものを、~/.bashrc
などにファイルに記載して、ターミナルを立ち上げなおしてから使ってみて下さい。
(直接ターミナルからコマンドとして実行しても良いですが、次回から消えてしまいます)
プロジェクトのトップへ一瞬で移動するalias
# ~/.zshrc alias cdback=" while :;do if [ -d '.git' -o -d 'bin' ];then break else cd ../ fi done printf '>> %s\n' `pwd` ls "
一瞬でプロジェクトのトップへ戻れるエイリアスです。
キーボードのホームポジションみたいに移動に使えます。
自分はRuby on Railsなどの開発では、普段Vimでソースコードをショートカットで横断して編集していますが、同じ様にカスタマイズした環境の人でもちょいちょい使えると思われるお気に入りのコマンドです。
ShellScriptの仕様解説
基本的に皆さんGitでバージョン管理してると思います。(…してますよね?)
そこで$ cdback
というコマンドで.gitディレクトリを見つけるまで$ cd ../
を繰り返して、管理対象範囲、つまりプロジェクトのトップまで戻るという仕様です。
まだ$ git init
しておらず.gitディレクトリがない場合、またはカレントディレクトリがプロジェクト配下でない場合
に無限ループになるのでbinディレクトリを見つけても止まるようにしてます。
なお、ShellScriptファイルとして作ると別途Shellが走ってその上で処理が行われるので、現在操作しているターミナル上でカレントディレクトリを切り替えるという挙動にならない為エイリアスで設定するようにしています。
是非お試しいただければ幸いですー!