如何将内容附加到txt文件

时间:2012-01-30 07:54:47

标签: unix command

我在unix环境中,我需要将以下内容附加到txt文件,而不是从新行开始: 内容是:

set value = 9.0.1.3 || set var = 12.4

txt文件内容为:

echo on
set name = 'charlie' ||

但是当我使用命令'cat'时,我可以将内容附加到txt文件,但内容将从新行开始,如下所示:

echo on
set name = 'charlie' ||
set value = 9.0.1.3 || set var = 12.4
好吧,我的目标是得到这样的结果:

echo on
set name = 'charlie' || set value = 9.0.1.3 || set var = 12.4

我应该使用什么命令来达到目标​​? THX。

2 个答案:

答案 0 :(得分:0)

sed -i '$s/$/ set value = 9.0.1.3 || set var = 12.4/' FILE

即位编辑FILE(按-i,如果您需要备份,请使用-i.BACKUPEXTENSION)。 $解决最后一行后的第'位,然后s用您的字符串替换该行末尾的空$ tring。

如果它应该在除了最后一行之外的其他行上完成,你可以使用行号,正则表达式等来解决s ubstitute命令。

答案 1 :(得分:0)

默认情况下,cat未在文件末尾添加任何新的行标识。如果你已经在文件末尾有一个换行符,那么它将被连同。

>echo "TTTT\c">test1
>echo "GGGG\c">test2
>cat test1 test2
TTTTGGGG>

请删除文件末尾的换行符,然后运行cat命令。

您可以使用以下命令删除文件末尾的换行符:

awk 'BEGIN{flag=0}{if(flag==1)print a;flag=1;a=$0}END{printf("%s",a)}' FILE_NAME >FILE_NAME