次の構成ファイル(config.txt)が提供されます。
more config.txt
export var1=345476746
ただし、新しいパラメータを追加した場合
echo "export var2=5645" >> config.txt
私達は得た
more config.txt
export var1=345476746export var2=5645
この状況を避ける方法は?
だから私たちは得る
more config.txt
export var1=345476746
export var2=5645
答え1
ファイルの末尾に改行文字がありませんconfig.txt
。
これPOSIX規格説明する持っていなければならない:
3.206ライン
ゼロ個以上の非文字シーケンス終了 <newline> 文字を追加。
あなたはできます新しい行を追加、例えば:
sed -i -e '$a\' config.txt
最後に行がまだない場合にのみ、新しい行が追加されます。
あなたの場合は簡単なことecho >> config.txt
ができます。
答え2
たぶん、最初にオプションでテキストを挿入する必要がありますexport var1=345476746
。-n
-N
do not output the trailing newline
例:
echo -n "export var1=345476746" > config.txt
echo "export var2=5645" >> config.txt
結果:
# more config.txt
export var1=345476746export var2=5645
答え3
改行を追加する最も簡単な方法は、echoを使用することです。
echo >> config.txt
echo "export var2=5645" >> config.txt