なんのきっかけかわかりませんがrailsコマンドにaliasを設定できることを知りましたので書きたいと思います。aliasとエイリアスと読みます。エイリアスを設定すると、既存のコマンドを自分好みにカスタマイズできて使いやすくすることができます。
他のコマンドとかぶると危険かもしれないので注意する必要はあると思いますが、おすすめのエイリアスがネットに紹介されたりなんかしていて、それをみながら設定してもよいかもしれませんね。
Railsコマンドのエイリアスの設定方法
はじめの知識としてエイリアスを設定するには。.bashrcというファイルを編集する必要があります。
はじめてやったときはよくわかりませんでしたので、誰でもわかるように大まかな手順を書きます。
- .bachrcをvimで開きaliasを追加する
- .bash_profileというものをvimで開きコマンド(実行ではない)を記述する
- 上記2つが終わったら source ~/.bash_profile コマンドを実行して設定を反映させる
- エイリアスがちゃんと動くかテストする 以上で完了
エイリアス設定の前提知識
どこで設定するかは開発環境によって違いはあるかと思いますので筆者の環境をあげたいと思います。
開発環境
ドットインストールをみて構築(ドットインストールのローカル開発環境構築をみるとわりと簡単に環境構築ができると思います。)
- Window10
- VirtualBox
- Vagrant
- putty
.bashrcというファイルはvimで編集する必要があります。vimでファイルを開くにはvi .bashrcというコマンドで開いて編集します。ドットインストールの開発環境構築動画をみて環境をつくっているのであれば vimはスクリプトで自動的にインストールされているので、puttyから vi .bashrcコマンドを実行することで.bashrcファイルを編集することがができます。
Vimってなんだよ
vimがなんなのかよくわかっていませんでした。vimはマウスとかカーソルキーなしでファイルを編集できるソフトのようです。ターミナルから直接ファイルを開いて編集できる優れもののようですが、はじめて触るひとにとってはすごくわかりづらいものかと思います。
しかしvimで.bashrcを編集する必要がありますから最低限のvimの操作方法を知っておかなけらばないのです。そんなときを想定して、ここさえおさえておけばvimでファイルを編集できるというものをあげておきます。
最低限のvimの知識
コマンドモード以降→ :
編集モード以降→ esc
保存せずに終了→ :q!
保存して終了→ :wq
insert → i (インサートはその場所にインサートされる)
改行 → o
実際にaliasを設定する
筆者と同じ環境であればまずは仮想マシンにputtyでアクセスします。
次にvi ~/.bashrcコマンドで.bashrcをvimで開きます。vi .bashrcでも開けたのですが ~/の意味はよくわからいですが、あとでよくないことがおこるともわからないので、~/は省略しないほうがよいでしょう。
.bashrcのファイルの中身
aliasを設定するには alias xx=”既存のコマン”のようにかきます。=の左右に半角スペースがあるとエラーがでるそうです。画像ではrc=”rails console”というふうに記述しています。vimの知識がなかったので大変でした。まずは編集モードに移行して。最終行でoを押して改行。
それからaliasを記述して、:wq を押して保存します。保存しおわったらもう一度ファイルを開いて念のため保存されているか確認したほうがよいでしょう。
.bash_profileを編集する
.bashrcを編集しおわったら、次に.bash_profileを編集します。
vi .bash_profileとコマンドをうってファイルを開きます。最終行にsource ~/.bashrcを追加します。
追加し終わったら保存して終了します。これもvimでやるので大変かもしれませんが、上記コマンドがあればなんとかできます。
設定を反映させる
2つのファイルを編集しおわったら。最後にコマンドを実行します。
source ~/.bash_profile
このコマンドを実行すると設定が反映されます。(設定がよみこまれる)
最後にエイリアスがちゃんと動くかどうか確認しておわりです。
Railsでエイリアスを設定する方法まとめ
- おつかいの環境によって.bashrcファイルへのアクセスの仕方が若干異なる可能性がある。
- .bashrcはviエディタ(vim)で編集する
- ドットインストールで仮想開発環境を構築した場合はvimははじめから仮想マシンにインストールされている
コメント