1. 刪除由空格組成的空白行 sed '/^ *$/d' test.txt sed '/[ ][ ]/d' test.txt 2. 刪除空白行 sed '/^[[:space:]]*$/d' test.txt 3. 刪除空格開頭的行 sed '/^ /d' test.txt 4. 刪除制表符(tab)的空白行 sed '/\t/d' test.txt
5. 刪除字母開頭的行 sed '/^[a-Z]/d' test.txt 6. 刪除以注釋行 sed '/^#/d' test.txt 7. 刪除指定行 sed '2d' test.txt 8. 刪除多行 sed '1,3d' test.txt ---刪除1到3行 sed '3,$d' test.txt ---刪除第三行到最后一行 9. 打印 sed '2p' test.txt ---打印第2行 sed -n '2p' test.txt ---打印第2行,不顯示文件內容 sed -n '2,5p' test.txt ---打印2-5行 10. 替換 sed 's/4/8/' test.txt ---4替換8,每行第一個4替換為8 sed 's/4/8/' test.txt ---將每行所有的4替換為8 sed '/asf21/s/e/8/' test.txt ---先查看asf21再講e替換為8 sed -e '1d' -e 's/asf/21/g' test.txt ---多重編輯,先刪除第一行,再替換asf為21 sed '/asf/c 123' test.txt ---查找asf的行全部覆蓋為123 11. 插入 sed '/sad/a 123' test.txt ---在sad后面插入一行123 sed '/sad/i 123' test.txt ---在sad前面插入一行123 12. 退出 sed '8q' test.txt ---打印前8行后退出 13. 抓取ip地址 ifconfig ens33 | sed '/.*inet /!d;s///;s/ .*//' .*inet: .表示任意字符,*任意多個前導字符 inet 192.168.163.130 netmask 255.255.255.0 broadcast 192.168.163.255 s///:前面//不適用配置規則,則使用上一步的匹配結果 后//匹配為空字符串刪除 192.168.163.130 netmask 255.255.255.0 broadcast 192.168.163.255 s/ .*//:將1個空格和后面的任意字符串刪除 192.168.163.130