天天看點

sed

#1 删除

[root@localhostruby] # sed '1d' ye.txt    #删除第一行

[root@localhostruby] # sed '$d' ye.txt    #删除最後一行

[root@localhostruby] # sed '1,2d' ye.txt  #删除第一行到第二行

[root@localhostruby] # sed '2,$d' ye.txt  #删除第二行到最後一行

[root@test125~]      # sed '/00/d' ye.txt #删除比對的行

進行簡單運算

#2 顯示

[root@localhostruby] # sed -n '1p' ye.txt      #顯示第一行

[root@localhostruby] # sed -n '$p' ye.txt      #顯示最後一行

[root@localhostruby] # sed -n '1,2p' ye.txt        #顯示第一行到第二行

[root@localhostruby] # sed -n '2,$p' ye.txt        #顯示第二行到最後一行

#3 查詢顯示

[root@localhostruby] # sed -n '/ruby/p' ye.txt    #查詢包括關鍵字ruby所在所有行

sed -n'/[a|b]/p' test.txt   #查詢包括關鍵字a或者b所在所有行

#4 查字元所在行

cat -n weibo_hot.log |grep “start_time:2014-07-1”

# 比如從第3行到第10行

sed -n '3,10p' myfile > newfile

# 檢視該檔案一共多少行

cat weibo_hot.log |wc -l

#下載下傳到桌面

sz weibo_hot_tmp.log

# 添加

[root@localhostruby] # sed '1a drink tea' ye.txt    #第一行後增加字元串"drink tea"

[root@localhostruby] # sed '1,3a drink tea' ye.txt  #第一行到第三行後增加字元串"drink tea"

[root@localhostruby] # sed '1a drink tea\nor coffee' ye.txt  #第一行後增加多行,使用換行符\n

# 替換一行或多行

[root@localhostruby] # sed '1c Hi' ye.txt    #第一行代替為Hi

[root@localhostruby] # sed '1,2c Hi' ye.txt  #第一行到第二行代替為Hi

#替換一行中的某部分

#格式:sed 's/要替換的字元串/新的字元串/g'   (要替換的字元串可以用正規表達式)

# 将字元串my替換為YEQING

sed"s/my/YEQING/g" ye.txt

# 找到二行替換

cat ye.txt |sed's/100/#100/g' |sed 's/200/#200/g'

[root@localhostruby] # sed -n '/ruby/p' ab | sed 's/ruby/bird/g'    #替換ruby為bird

本文轉自cloves 51CTO部落格,原文連結:http://blog.51cto.com/yeqing/1598302

上一篇: vi
下一篇: awk