Linux 想要在檔案的最前面和最後面增加一行或多行的資料,可以怎麼做呢?
在檔案最後增加資料很簡單:
- echo 'last line data' >> filename # 單一檔案
- for f in .txt ; do echo 'last line data' >> $f; done # 目錄下所有 txt 檔 最後都增加一行
Linux 使用 SED 對檔案 最前、最後 增加一行資料
在此想用 sed 做完這些事情
sed 要檔案第一行增加內容
- sed -i '1i' filename
- 範例:
- sed -i '1ifirst line data\n' filename
- sed -i '1ifirst line data\n' * # 多檔案
sed 要檔案最後一行增加內容
- sed -i '$a' filename
- 範例:
- sed -i '$alast line data\n' filename
- sed -i '$alast line data\n' * # 多檔案
若想要做 MySQL Transaction,需要在檔案前後加點資料:
對檔案前面增加
- SET autocommit=0;
- START TRANSACTION;
再對檔案最後面增加
- COMMIT;
- SET autocommit=1;
作法如下:
- sed -i '1iSET autocommit=0;\nSTART TRANSACTION;' .sql
- sed -i '$aCOMMIT;\nSET autocommit=1;' .sql