ヘッダーとフッター行を除くすべての行の後に文字列を追加します。

ヘッダーとフッター行を除くすべての行の後に文字列を追加します。

ファイルのヘッダーとフッターを除いて、ファイルの各行の後に文字列を追加したいと思います。そのため、以下のコマンドを使用してヘッダーとフッター以外の行の範囲を変更しましたが、ヘッダーとフッターが削除され、ヘッダーとフッター行を削除したくありません。

sed -n '2,5p; '"$str_var"'' abc.dat > abc.dat.temp

以下のコマンドを使用してヘッダーをスキップして他の行を変更しようとしても、フッター/ティーザー行を同じままにするオプションはありません。

sed '1! s/$/'"$str_var"'/g' abc.dat > abc.dat.temp

ヘッダーとフッター行を除くファイルのすべての行を変更する方法に関する提案とコマンドは、ヘッダー/フッター行を削除しないでください。

ベストアンサー1

ヘッダーとフッターがそれぞれ1行であると仮定します。最初の行と最後の行は追加の処理をスキップします。デフォルトでは、すべての行が印刷されます。

$ seq 10 | sed '1n; $n; s/$/ hello/'
1
2 hello
3 hello
4 hello
5 hello
6 hello
7 hello
8 hello
9 hello
10

おすすめ記事