替換關鍵字字串:
sed -i s/abc/abcd/g test.txt #把檔案中的abc換成abcdsed -i '
:a;n;$!ba;s#\n#,#g
'test.txt #把檔案中的回車符替換成逗號
cat test.txt |awk -v rs=''''
#把檔案中的回車符替換成空格
sed -e '
s/,/\n/g
' /tmp/monitor_disk.txt #把逗號替換成換行
刪除符合條件的行:
sed -i /test/d /file.txt #刪除檔案中有關鍵字「test」的行
sed -i /^$/d test.txt #刪除乙個檔案中所有空行
sed -i /^#/d test.txt #刪除乙個檔案所有以"#"
開頭的行
sed -i /^abc/d test.txt #把檔案中以abc開頭的行刪除
sed -i /abc$/d test.txt #把檔案中以abc結尾的行刪除
sed -i '
1,17d
' /tmp/monitor_disk.txt #刪除1到17行
在關鍵字前後插入字串:
str="abc"
echo $str |sed
's/abc/& ***/
'abc ***
echo $str |sed
's/abc/*** &/
'*** abc
在關鍵字前後插入行:
echo"abc
" |sed
'/abc/i\\***
'***
abcecho
"abc
" |sed
'/abc/a\\***
'abc
***
擷取連個關鍵字之間的字串:
str="1.1.2
"echo $str |grep -op '
(?<=).+?(?=)
'1.1.2
echo $str |sed -r '
s/.*(.*)<\/version>.*/\1/
'1.1.2
列印關鍵字前後的字串:
str="test=test1
"echo
"$str
" | cut -d '
=' -f 1
test
echo
"$str
" | cut -d '
=' -f 2
test1
shell文字處理
最於檔案的操作以前都是用高階程式語言來操作的。今天恰好需要將乙個目錄中的檔案資訊儲存到sqlite3資料庫中 我用linux中的工具和shell來作為自己畢業設計做原型開發 下面記錄一下這裡用到的部分知識,以作備忘。用ls命令來說明 1.關於shell中的管道和重定向問題。這個知識基礎,這裡不再說了...
WML 文字處理
wml使用xml文件字符集,目前支援unicode 2.0,和hdml不同,wml的所有標籤,屬性和規定的可接收值必須小寫,card的名字和變數也是區分大小寫的。和hdml一樣,對於連續的空字元,只顯示乙個空格。標籤內屬性的值必須用 或者 括起來,屬性名,和值之間不能有空格。對於不成對出現的標籤,必...
shell 文字處理
最近優化指令碼,將幾套指令碼合併,比如,處理nand手機的指令碼和處理emmc手機的指令碼是不一樣的,這導致我們的指令碼有很多個版本。手機側只有busybox,所以不能使用功能強大的python來處理文字。花了半天時間,發現雖然語法比較怪異,但也能簡潔的完成任務。if e proc emmc the...