この sed
コマンドは 123
を追加します ファイルの最初の行の終わりまで。
sed ' 1 s/.*/&123/' yourfile.txt
また
sed '1 s/$/ 123/' yourfile.txt
結果を同じファイルに追加するには、 -i
を使用する必要があります スイッチ:
sed -i ' 1 s/.*/&123/' yourfile.txt
これは、/etc/passwd
の最初の行に「ok」を追加するソリューションです。 、少し「調整」することで、これをスクリプトで使用できると思います:
$ awk 'NR==1{printf "%s %s\n", $0, "ok"}' /etc/passwd
root:x:0:0:root:/root:/bin/bash ok
編集するには ファイル、ed
を使用できます 、標準エディター:
line=' bcm2708.w1_gpio_pin=20'
file=/boot/cmdline.txt
if ! grep -q -x -F -e "$line" <"$file"; then
ed -s "$file" < <(printf '%s\n' 1 a "$line" . 1,2j w q)
fi
ed
のコマンド:
1
:1 行目に移動a
:追加 (これは現在の行の後に挿入されます)- 挿入モードになり、
$line
の展開を挿入しています .
:挿入モードを停止1,2j
1行目と2行目に参加w
:書くq
:やめる