2012-01-30 71 views
0

我在UNIX env和我需要追加下面內容到一個txt文件,而無需啓動一個新行: 內容是:如何添加內容到一個txt文件

set value = 9.0.1.3 || set var = 12.4 

txt文件內容是:

echo on 
set name = 'charlie' || 

但是當我使用命令「貓」,我可以追加內容的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 

我應該使用什麼命令來達到我的目標是什麼?謝謝。

+0

[檢查這個] [1] [1]:http://stackoverflow.com/

可以使用下面的命令在文件的結尾去除換行符問題/ 602921/what-unix-command-can-we-use-to-append-some-text-to-specific-line-in-a-file – ndalama 2012-01-30 07:57:51

+0

Thx,非常適合它。 – CharlieShi 2012-01-30 08:01:49

+0

這正是你要找的東西: http://stackoverflow.com/questions/3936738/bash-cat-multiple-files-content-in-to-single-string-without-newlines – Dawood 2012-01-30 08:02:01

回答

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

即就地編輯FILE(由-i,如果你需要一個備份,使用-i.BACKUPEXTENSION)。第一個$'處理最後一行後,s用空白$代替行結束處的字符串。

如果它應該比上最後其他線路(S)來完成,你可以用行號,正則表達式等

0

默認cat不把任何新的性格特徵線在解決s ubstitute命令文件結尾。如果您已在文件末尾添加了換行符,則會進行連接。

>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