ファイルがあり、A.txt
N行目の末尾にテキストを追加しようとすると、新しい行が作成されて印刷されます。新しい行を作成せずに同じ行に印刷するコマンドはありますか?
A.txt
hi all
how r u
hows going
N行(この場合は2行)までの文字列が必要です。
hi all
how r u friend
hows going
Googleがコマンドを入力しようとすると、次のように表示されます。
$ cat a.txt
hi all
how r u
friend
hows going
答え1
sed
asを使用してこれを行うことができます。
sed '2s/.*/& friend/' a.txt
2s
行2を交換することを示します。 .*
ライン全体をキャプチャ&
しながら印刷この行の後には新しいテキストが続きます。
ファイルを同時に更新するには、オプションで-i
オプションを使用できますsed
。
答え2
そしてアッ:
awk 'NR==2{ $0=$0 " friend" }1' infile >output
NR==2
入力の2行目を表し、$0
現在の入力行を表し、1
最後に現在の入力行と変更があるかどうかを出力します。