改行に置換するためのワンライナー集(tr/sed/perl)
事例:$PATHの中身が長くて見にいので、":"を改行に置換したい
$ echo $PATH
/Users/DQNEO/.rbenv/bin:/Users/DQNEO/.rbenv/shims:/Users/DQNEO/.plenv/bin:/Users/DQNEO/.plenv/shims:/usr/local/opt/coreutils/libexec/gnubin:/usr/local/bin:/Users/DQNEO/bin:/usr/bin:/bin:/usr/sbin:/sbin
横に長いので、改行で区切りたい!
trで置換
こういう場合は、trコマンドを使うのが一番簡単です。$ echo $PATH | tr ':' '\n'
/Users/DQNEO/.rbenv/bin
/Users/DQNEO/.rbenv/shims
/Users/DQNEO/.plenv/bin
/Users/DQNEO/.plenv/shims
/usr/local/opt/coreutils/libexec/gnubin
/usr/local/bin
/Users/DQNEO/bin
/usr/bin
/bin
/usr/sbin
/sbin
sedで置換
$ echo $PATH | sed 's/:/\n/g'
ただしMacOSX のsedの場合、これでは動きません。GNU sedを使いましょう。"Homebrew を使って OSX に GNU sed を入れる - おともだちティータイム"
Perlで置換
PerlならMac / Linux などOS関係なく同じ挙動なので安心です。$ echo $PATH | perl -pe 's/:/\n/g'