sed -n '10'p 1.txt //列印指定的第10行
sed -n '1,10'p 1.txt //列印1到10行
sed -n '30,$'p 1.txt //列印30到末尾行
sed -n '/root/'p 1.txt //列印包含root的行
sed '/[0-9]/'d 1.txt //删除所有包含數字的行(隻是不顯示數字行,檔案内容沒有變化)
sed '/[a-zA-Z]/'d 1.txt //删除所有的字母行(隻是不顯示字母行,檔案内容沒有變化)
sed '1,19'd 1.txt //删除1到19行,隻是不顯示1到19行,但實際檔案沒有變化
sed -i '1,19'd 1.txt //删除1到19行,檔案被實際删除1到19行.
sed -r 類似于egrep=grep -E 用于有特殊符号
$-1 //倒數第一行
-i 會對實際檔案進行操作改動
a \string 在制定的行後面追加新行,内容為string
\n 可以用于換行
i \string 在制定的行前面追加新行,内容為string
r FILE 将指定的檔案的内容添加至符合條件的行處
w FILE 将位址指定的範圍内的行另存至指定的檔案中
s/// s@@@ s### 查找并替換
sed '1,10s/nologin/login/g' 1.txt //将nologin替換成login(沒有實際更改檔案) //g 全局替換 i 忽略大小寫
sed '1,10s#/sbin/nologin#login#g' 1.txt //替換目錄1到10行
sed 's#/sbin/nologin#login#g' 1.txt //全局替換
sed 's#^.*$#& login#g' 1.txt //在所有行的末尾加一個login
sed 's#[0-9]##g' 1.txt //把所有行的數字删掉
sed 's#[a-zA-Z]##g' 1.txt //把所有的字母删掉
sed 's#[^0-9a-zA-Z]##g' 1.txt //删除所有非數字字母的内容
sed -r 's#(^[a-z]+) (:.*:) (.*$)#\3\2\1#g' 1.txt //行頭第一段和行尾第一段調換