首页 > 代码库 > Linux基础-sed+正则表达式
Linux基础-sed+正则表达式
1,删除文件每行的第一个字符:sed -r ‘s/^.//g‘ passwd
2,删除文件每行的第二个字符:sed -r ‘s/^(.)(.)/\2/g‘ passwd
3,删除文件每行的最后一个字符:sed -r ‘s/(.)$//g‘
4,删除文件每行的倒数第二个字符: sed -r ‘s/(.)(.)$/\2/g‘ passwd
5,删除文件每行的第二个单词:sed -r ‘s/^([a-Z])([^0-9][^a-Z])(a-Z)/\1\2/g‘ passwd
6,删除文件每行的倒数第二个单词:
sed -r ‘s/([a-Z]+)([^0-9][^a-Z])([a-Z]+)$/\2\3/g‘ passwd
7,删除文件每行的最后一个单词: sed -r ‘s/([a-Z]+)$‘ passwd
8,交换每行的第一个字符和第二个字符:sed -r ‘s/^(.)(.)/\2\1/g‘ passwd
9,交换每行的第一个字符和第二个单词:
sed -r ‘s/^(.)([a-Z]+)([^0-9][^a-Z]+)([a-Z]+)([^0-9][a-Z])/\4\2\3\1\5/g‘ passwd
10,交换每行的第一个单词和最后一个单词:
sed -r ‘s/^([a-Z0-9]+)([^a-Z0-9]+)(.+)([^a-Z0-9]+)([a-Z0-9]+)/\5\2\3\4\1/g‘ passwd
11,删除一个文件中所有的数字:sed -r ‘s/[0-9]//g‘ passwd
12,删除每行开头的所有空格:sed -r ‘s/^ //g‘ passwd
13,用制表符替换文件中出现的所有空格。
14,把所有大写字母用括号()括起来: sed -r ‘s/[A-Z]/(&)/g‘ passwd
15,打印每行3次:sed ‘p;p‘ passwd 每一个p代表一次打印,如果没有p则打印一遍,之后没多一个p就会多一次打印
16,只显示每行的第一个单词:sed -r ‘s/([^0-9a-Z]+)(.+)//g‘ passwd
17,打印每行的第一个单词和第三个单词
18,用命令获取格式为 mm/yy/dd 的日期格式,结合管道,将其换成 mm;yy;dd格式
date "+%m/%y/%d" | sed -r ‘s/\/\-/g‘
Linux基础-sed+正则表达式