echoとリダイレクトを組み合わせると、ファイルを開かずとも行の挿入をしてくれるわけでして、
$ echo hogehoge >> temp.txt
なんてすると、行末に"hogehoge"という文字を挿入してくれるので、*sh スクリプト書くときとかに便利だったりします。私は書いたことありませんが(ぇ
んで、echoで行末に挿入できるんなら、指定した行に任意文字列を挿入する方法もあるんじゃね?なんて思って数か月、調べずにほったらかしにしていたのをGW何の予定もないことをいいことに調べてみました。「linux 行 挿入 コマンド」でグーグル先生に尋ねるとあっさり答えが。google先生曰く「sedコマンドを使うがよい」とご教授いただいたので、メモ。
$ echo hogehoge >> temp.txt
$ echo fugafuga >> temp.txt
$ cat temp.txt
hogehoge
fugafuga
$ sed -i -e "2i fooobaaa" temp.txt
$ cat temp.txt
hogehoge
fooobaaa
fugafuga
sed は行挿入コマンドではなくて、文字列置換コマンドですので、ファイル整形はお手の物。色々な使い方があるみたいですので、ご興味をもたれた方は調べてみてはいかがでしょうか。
参考サイト:
ある文字列をファイルの特定行に挿入するコマンド - 元RX-7乗りの適当な日々 http://goo.gl/kqXRD
sedコマンドでファイルを上書き編集 - OpenGroove http://goo.gl/LfaJP