Linux基础-sed+正则表达式
Posted DragonFire
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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+正则表达式的主要内容,如果未能解决你的问题,请参考以下文章