ShellScript

awk始めました

awkを使い始めました. 学生生活残り5ヶ月を切ってのタイミングですが便利です. しかしネットや本ですぐ見かける程度の事しかやってないので,特にネタになるわけでもないですね...

echoのクォートとダブルクォート

シェルコマンドのechoにシングルクォートとダブルクォートに動作の違いがあったのでメモ。 $ hoge=1234 $ echo hoge hoge $ echo $hoge 1234 $ echo 'hoge' hoge $ echo "hoge" hoge $ echo '$echo' $echo $ echo "$echo" 1234

echo

#!/bin/sh echo -en hoge \\t hoge \\t echo fugaというシェルスクリプトを実行すると出力は hoge hoge fugaとなる. eオプションでエスケープシーケンスが使えるようになって,nオプションで改行をしなくなる. シェルスクリプトに書くときには,\だけだと\…

tee

$ command hoge | tee filenameとパイプでteeに渡してやると標準出力に出力しつつファイルにも書きこんでくれる. 今までリダイレクトでファイルに渡して,catとかで見て確認してたけど,これは便利かもしれんね.

more

長いテキストを見るときなんかに, $ cat filename | moreとすると,ターミナル上でenterでページ送りしながら見れる. 意外と便利かも.

echo

echoって,引数で渡した文字列とかを出力するだけと思っていたが,使い方によってはすばらしいものなんじゃないかと. echoにオプションで-nとか-eがあったなんて知らなかったよ…… nは出力の最後で改行しないオプション,eはechoで決められているエスケープ…

for文

シェルスクリプトのfor文は優秀だなぁ. for i in a b c do echo $i doneとすると, a b cって出てくるんだもんなぁ. 文字列操作に非常に便利. シェルスクリプトの利用目的をちゃんとちゃんとわかって設計されているということですかね. というのを感じた…