write ahead log

ロールフォワード用

aliasコマンド[POSIXコマンド]

aliasコマンドはコマンドに別名をつけるコマンドです.

aliasの登録

alias 割当て名='コマンド'

という形式で使います.

twinbird@:~$ alias logwatch='tail -f'
twinbird@:~$ logwatch commands.txt 
val
vi
wait
wc

aliasの一覧

引数なしで実行すると登録されているaliasの一覧が表示されます.

twinbird@:~$ alias
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias logwatch='tail -f'
alias ls='ls --color=auto'

aliasの参照

引数に割り当て名を渡すと登録内容を表示します.

twinbird@:~$ alias ls
alias ls='ls --color=auto'
twinbird@:~$ alias hoge
bash: alias: hoge: 見つかりません

aliasの解除

登録の解除にはunaliasを使います.

aliasの一時解除

(これはPOSIXじゃないかも.シェルの仕様なんだろうけど,よーわからん) 一時的に使うaliasではないコマンドを使いたい場合があります. cpコマンドやlsコマンドにaliasがかかっている時は標準のものを使いたいシチュエーションがありますね.

そんな時はバックスラッシュを使います.

twinbird@:~/lab$ ls
合計 4
-rw-rw-r-- 1 twinbird twinbird 1656  3月 13 07:33 edit.txt

twinbird@:~/lab$ \ls
edit.txt

aliasの永続化

aliasが有効なのはコマンドを入れてからログアウトまでなので,ずっと使う場合は毎回ログインするたびに aliasコマンドを入れる必要があります. そんな馬鹿馬鹿しいことは普通しないのでbashなら.bashrcか.bash_profileに書いて,起動時に読み出してもらうのが普通です.

twinbird@:~$ vi ~/.bash_profile

ところで個人的にはあんまり使わないなぁ,alias.