最后還是想用簡單的腳本解決,發(fā)現(xiàn)使用 sed 命令可以方便得在文件每一行后添加一個字符。首先看一下 sed 命令。
創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、峨山縣網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、html5、商城系統(tǒng)網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為峨山縣等各大城市提供網(wǎng)站開發(fā)制作服務。
sed 是一種在線編輯器,它一次處理一行內(nèi)容。處理時,把當前處理的行存儲在臨時緩沖區(qū)中,稱為“模式空間” (pattern space) ,接著用 sed 命令處理緩沖區(qū)中的內(nèi)容,處理完成后,把緩沖區(qū)的內(nèi)容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內(nèi)容并沒有 改變,除非你使用重定向存儲輸出。 Sed 主要用來自動編輯一個或多個文件;簡化對文件的反復操作;編寫轉換程序等。
假設處理的文本為 test.file ,在每行的頭添加字符,比如 HEAD ,命令如下:
在每行的行尾添加字符,比如 TAIL ,命令如下:
幾點說明:
這樣就處理完了!總之恰當使用sed命令是可以避免來回打開文件造成的時間浪費,可以使用sed命令在linux腳本中做一些更好玩的事情。希望這篇文章可以給你一些幫助~
sed命令行格式:sed [options] 'command' file(s)
options常用選項:
-n或--quiet或——silent:僅顯示script處理后的結果;
-e:以選項中的指定的script來處理輸入的文本文件;
-f:以選項中指定的script文件來處理輸入的文本文件;
-r∶sed 的動作支援的是延伸型正規(guī)表示法的語法;
-i∶直接修改讀取的檔案內(nèi)容,而不是由螢幕輸出;
-h或--help:顯示幫助;
-V或--version:顯示版本信息。
Command常用命令:
a:新增,a 的后面可以接字符串,而這些字符串會在新的一行出現(xiàn)(目前的下一行);
c:取代,c 的后面可以接字符串,這些字符串可以取代 n1.n2 之間的行;
d:刪除,d 后面通常不接任何字符串;
i:插入,i 的后面可以接字符串,而這些字符串會在新的一行出現(xiàn)(目前的上一行);
p:列印,亦即將某個選擇的資料印出。通常 p 會與參數(shù) sed -n 一起運作;
s:取代,可以直接進行取代的工作,通常與正規(guī)表達式搭配使用。
實例說明:
新增操作:a命令
sed '/^bird/a\test' file將test追加到 以bird開頭的行后面
刪除操作:d命令
sed '/^$/d' file #刪除空白行;
sed '2d' file #刪除第二行;
sed '2.$d' file #刪除第2行到最后一行;
sed '$d' file #刪除最后一行;
sed '/^bird/'d file #刪除所有開頭是bird的行;
插入操作:i命令
sed -i '3i\bird ' bird.conf #在bird.conf文件第3行之前插入bird
替換文本中的字符串:s命令
sed 's/bird/birds/' file #將文本中的bird替換成birds;
sed -i 's/ bird / birds /g' file #將file文件中每一行的第一個bird替換為birds;
不太清楚你的文件類型是什么樣子的,
我好像沒有注意到linux里有直接追加文件內(nèi)容的語句和命令
如果是文本類型的文件 ,可以使用
vi /data/data.txt
的形式進行編輯 ,打開文件 之后,按insert鍵進行插入模式,在文件尾部添加內(nèi)容,
結束 編輯 時,可以按esc鍵 ,然后在提示符處輸入
:wq
結束編輯保存。
希望對你有用,
如果編輯失敗,不需要保存,
可以使用
:q!
強制退出編輯 ,這樣的話文件 不會被 修改。
希望對你有幫助。
你的問題有點不夠清楚
1. 如果打開編輯器,進行文本編輯,可以使用vi命令或者vim,打開vim編輯器進行文本編輯。具體命令:
vim?file.txt
當然其他編輯器也可以,比如nano。
2. 如果你不想用編輯器交互的寫入內(nèi)容,只是使用命令行,最簡單的就是用echo命令:
echo?"This?is?Baidu!"??file.txt
使用""表明在目標文檔后追加一行,""表示用echo后面的內(nèi)容替換目標文件的內(nèi)容。