命令格式:sed option script file
-e script 在處理輸入時,將script中指定的命令新增到已有的命令中
-f file 在處理輸入時,將file中指定的命令新增到已有的命令中
-n 不產生命令輸出,使用print命令來完成輸出
-s s命令會用斜線間指定的第二個文字字串來替換乙個文字字串
eg:sed 's/text1/text2/' filename 將檔案內容經過修改處理輸出到螢幕,但不會改變原filename檔案的內容
eg:sed -e 's/text1/text2/;s/txt1/txt2/' filename
sed命令上執行多個命令時,只要用-e選項
-f 從檔案中讀取編輯命令
eg:sed -f script.sed filename
cat script.sed
s/brown/green/
s/fox/elephant/
s/dog/cat/
主要用來從大文字檔案中讀取資料元素,並將它們格式化成可讀的報告
命令格式:gawk option program filename
gawk選項
-f fs 指定行中劃分資料字段的字段分隔符
-f file 從指定檔案中讀取程式
-v var=value 定義gawk程式中的乙個變數及其預設值
-mf n 指定要處理的資料檔案中最大字段數
-mr n 指定資料檔案中的最大資料行數
-w keyword 指定gawk的相容模式或警告等級
gawk程式指令碼用一對花括號來定義。你必須將指令碼命令放到兩個花括號({})中,及program
$0代表整個文字行;
$1代表文字行中的第1個資料字段;
$2代表文字行中的第2個資料字段;
$n代表文字行中的第n個資料字段
預設-f引數值為" "空格
$ echo "my name is rich" | gawk ''
my name is christine
begin關鍵字強制gawk在讀取資料前執行begin關鍵字後指定的程式指令碼
end關鍵字允許你指定乙個程式指令碼,gawk會在讀完資料後執行它
$ cat script4.gawk
begin
end
$
$ gawk -f script4.gawk /etc/passwd
the latest list of users and shells
userid shell
-------- -------
root /bin/bash
bin /sbin/nologin
daemon /sbin/nologin
[...]
christine /bin/bash
mysql /bin/bash
samantha /bin/bash
timothy /bin/bash
this concludes the listing
$
Shell命令之sed和awk
1,sed 刪除指定行。sed i d filename 2,sed 刪除多行。sed i d filename 3,sed刪除最後一行。sed i d filename 4,sed替換文字檔案中所有出現的字元。sed i s abc def g filename 將文字中所有的abc替換成def。...
sed基礎命令彙總
sed流編輯器 一次處理一行內容 原檔案不會被改變 a 新增 sed e 2 a haha test01.txt 在第2行後邊新增haha 新增是在指定行的後邊新增 c 取代 sed e 1c csdn test01.txt 1是行號 把第一行的內容用csdn來替代 d 刪除 sed e 3d te...
Sed命令基礎操作
sed 用法的小技巧 1 在查詢範圍時不需要用到替換,所以不用 s 2 當只需要列印被修改行時,可以使用 n 和 p 選項,注意二者一定配合使用 3種方式指定命令列上的多重指令 1 用逗號分隔指令 2 在每個指令前放置 e 3 輸入單分號後敲擊 return 刪除 d命令 sed 2d exampl...