Linux20180502 六周第四次課(5月2日)
阿新 • • 發佈:2018-05-02
sed 練習 六周第四次課(5月2日)
復習
擴展
打印某行到某行之間的內容http://ask.apelearn.com/question/559
sed轉換大小寫 http://ask.apelearn.com/question/7758
sed在某一行最後添加一個數字http://ask.apelearn.com/question/288
刪除某行到最後一行 http://ask.apelearn.com/question/213
444
[rty]
**
fgfgf
怎麽能截取
[abcfd]
123
324
444
[rty]
這一部分出來呢?
復習
擴展
打印某行到某行之間的內容http://ask.apelearn.com/question/559
sed轉換大小寫 http://ask.apelearn.com/question/7758
sed在某一行最後添加一個數字http://ask.apelearn.com/question/288
刪除某行到最後一行 http://ask.apelearn.com/question/213
打印1到100行含某個字符串的行 http://ask.apelearn.com/question/1048
打印文件中特定的某行到某行之間的內容
例如:有個文件test的內容如下:
ert
fff
**
[abcfd]
123
324
444
[rty]
**
fgfgf
怎麽能截取
[abcfd]
123
324
444
[rty]
這一部分出來呢?
復習一下sed
sed '/匹配的內容/' 文件名
sed -rn '/(abcfd)/,/(rty)/'p test.txt
sed -n '/\[abcfd\]/,/\[rty\]/p' test.txt
sed 如何轉換大小寫字母
sed中,使用\u表示大寫,\l表示小寫
1. 把每個單詞的第一個小寫字母變大寫:
sed 's/\b[a-z]/\u&/g' filename
sed 's/\b[a-z]/\u&/g' test.txt
2. 把所有小寫變大寫:
sed 's/[a-z]/\u&/g' filename
sed 's/[a-z]/\u&/g' test.txt
3. 大寫變小寫:
sed 's/[A-Z]/\l&/g' filename
sed 's/[A-Z]/\l&/g' test.txt
sed在文件中某一行最後添加一個數字
sed 's/\(^a.*\)/\1 12/' test.txt 在a開頭的行後面添加12
sed刪除某關鍵字的下一行到最後一行
如何使用sed打印1到100行包含某個字符串的行
sed -n '1,20{/44/p}' test.txt
多少行就算沒有達到也可以。
匹配44
Linux20180502 六周第四次課(5月2日)