• ベストアンサー

任意の場所にリダイレクトしたい。

皆さんこんにちわ! 質問させていただきます。 例えば、test.txtというファイルがあったとしてそのファイルの中身が、 % cat -n test.txt 1 one 2 two 3 four 4 five であって、Shell上から、echoコマンドを使って三行目に追記したい。 というのは、可能でしょうか? どなたか、知恵をお貸しいただければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

#1さんの方法だと、各行が空白文字を含まないということが前提ですね。 シンプルに、 head -2 test.txt echo tree tail +3 test.txt

hey69
質問者

お礼

遅くなりました。すごくシンプルですね。 ありがとうございました。こんなやり方もあるのですね。勉強になりました!

その他の回答 (1)

  • syea
  • ベストアンサー率50% (6/12)
回答No.1

headコマンドとtailコマンドを使うことで可能です。 --------------------------------- #!/bin/sh w1=`head -2 test.txt`       <= 前2行のread w2=`echo $w1; echo three`    <= 新行(three)のadd w3=`echo $w2; tail +3 test.txt`  <= 3行目以降のread for res in $w3            <= 全体の表示 do   echo $res done --------------------------------- one two three four five

hey69
質問者

お礼

遅くなりました。 ありがとうございました!tailに+があることを知りませんでした。勉強になりました!

関連するQ&A