はじめに
現在新卒エンジニア1年目の私が多用している、「alias」による作業効率化を紹介します!
特に、ターミナル上での作業が多い分野(gitやrailsなど) でこうかばつぐんでございます。
aliasとは
alias(エイリアス)とは、日本語で「別名」や「通称」という意味です。
aliasがどういうものかと言うと、一言で言えばコマンドのショートカットです。
ターミナルでよく打ち込む長いコマンドを省略して打ち込むことができます!
aliasの設定方法
aliasは以下のコマンドで設定できます。
# aliasの書き方
$ alias {省略形}='{本来のコマンド}'
# 例) git add -Aをgaaと省略する
$ alias gaa='git add -A'
# 全変更分をstageすることができる
$ gaa
# 例) git checkoutをgcoと省略する
$ alias gco='git checkout'
# feature-123ブランチにcheckoutすることができる
$ gco feature-123
この例の通りにaliasを設定すると、
「gaa」と打つだけで「git add -A」を実行することができますし、
「gco {ブランチ名}」と打つだけで「git checkout {ブランチ名}」を実行することができます!
まさに普段打っている長いコマンドを、あの煩わしいコマンドを、たった数文字にショートカットすることができます!
ただし、このコマンドはターミナルを閉じるとリセットされてしまうので、ターミナル起動時に自動で設定されるようにしましょう。
- shellがbashの方は
~/.bashrc
- shellがzshの方は
~/.zshrc
に書くと自動でaliasが設定されます!
---以下bashでの例---
# vimかなにかで~/.bashrcにaliasのコマンドを追記する
$ vim ~/.bashrc
# 追記ができたら~/.bashrcを再読み込みする
$ source ~/.bashrc
これでターミナルを再起動してもaliasが設定できています!
おすすめのalias設定例
あくまで一例ですので、みなさんの扱いやすい形でお使いください!
基本
# ~/.bashrc操作周り
alias virc='vim ~/.bashrc'
alias sorc='source ~/.bashrc'
alias carc='cat ~/.bashrc'
# originalコマンドの上書き
alias ls='ls -lahFG'
alias ps='ps aux'
alias psg='ps aux | grep'
# よく使うディレクトリへのcdショートカット
alias cddev='cd ~/src/development'
alias cdm='cd ~/src/development/rails/memo_app'
git
alias g='git'
alias ga='git add'
alias gaa='git add -A'
alias gap='git add -p'
alias gb='git branch'
alias gbd='git branch -D'
alias gbm='git branch -m'
alias gcm='git commit -m'
alias gco='git checkout'
alias gcob='git checkout -b'
# masterにcheckout、masterがなかったらmainにcheckout
alias gcom='git checkout master 2>/dev/null || git checkout main'
alias gd='git diff'
alias gl='git log'
# masterをmerge、masterがなかったらmainをmerge
alias gmm='git merge master 2>/dev/null || git merge main'
alias gp='git push'
alias gpl='git pull'
alias gpo='git push origin'
alias gpuo='git push -u origin'
alias gs='git status'
alias gsa0='git stash apply stash@{0}'
alias gsl='git stash list'
alias gss='git stash save'
alias gsu='git stash save -u'
rails
alias r='rails'
alias rc='rails c'
alias rdc='rails db:create'
alias rdd='rails db:drop'
alias rdm='rails db:migrate'
alias rdmr='rails db:migrate:reset'
alias rdmrds='rails db:migrate:reset db:seed'
alias rdms='rails db:migrate:status'
alias rdr='rails db:rollback'
alias rdrs='rails db:reset'
alias rds='rails db:seed'
alias rdsr='rails db:seed:replant'
alias rr='rails routes'
alias rs='rails s'
おわりに
学生時代にこの技を教えてくださった先輩エンジニアの方には頭が上がりません。