1,删除文件每行的第一个字符。sed 's/.//' install.logsed -n 's/^.//gp' /etc/passwd
sed -nr 's/(.)(.*)/\2/p' /etc/passwd2,删除文件每行的第二个字符。sed 's/.//2' install.logsed 's/(.)(.)(.*)/1\3\/' install.logsed -nr 's/(.)(.)(.*)/\1\3/p' /etc/passwd3,删除文件每行的最后一个字符。sed 's/.$//' install.logsed -nr 's/.$//p' /etc/passwdsed -nr 's/(.*)(.)/\1/p' /etc/passwd4,删除文件每行的倒数第二个字符。sed -r 's/(.*)(.)(.)/\1\3/' install.logsed -nr 's/(.*)(.)(.)/\1\3/p' /etc/passwd5,删除文件每行的第二个单词。sed -r 's/([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)(.*)/\1\2\4\5/' install.logsed -nr 's/([^a-Z]*)([a-Z]+)([^a-Z]+)([a-Z]+)(.*)/\1\2\3\5/p' /etc/passwd6,删除文件每行的倒数第二个单词。sed -r 's/([a-Z]+)([^a-Z]+)(.*)([a-Z]+)([^a-Z]+)([a-Z+])/\1\2\3\4\6/' install.logsed -nr 's/(.*)([^a-Z]+)([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]*)/\1\2\4\5\6/p' /etc/samba/smb.conf7,删除文件每行的最后一个单词。sed -r 's/(.*)([^a-Z]+)([a-Z]+)/\1\2/' /etc/passwdsed -nr 's/(.*)([^a-Z]+)([a-Z]+)([^a-Z]*)/\1\2\4/p' /etc/samba/smb.conf8,交换每行的第一个字符和第二个字符。sed -r 's/(.)(.)/\2\1/' /etc/passwdsed -nr 's/(.)(.)(.*)/\2\1\3/p' /etc/passwd9,交换每行的第一个字符和第二个单词。sed -r 's/(^.)([^a-Z]*)([a-Z]+)([^a-Z]+)([a-Z]+)/\5\2\3\4\1/' /etc/passwdsed -nr 's/([^a-Z]*)([a-Z]+)([^a-Z]+)([a-Z]+)(.*)/\1\4\3\2\5/p' /etc/samba/smb.conf10,交换每行的第一个单词和最后一个单词。sed -r 's/([a-Z]+)([^a-Z]+)(.*)([^a-Z]+)([a-Z]+)/\5\2\3\4\1/' install.logsed -nr 's/([^a-Z]*)([a-Z]+)([^a-Z]+)([a-Z]+)(.*)/\1\4\3\2\5/p' /etc/passwd11,删除一个文件中所有的数字。sed 's/[0-9]//g' install.logsed 's/[0-9]*//g' /etc/passwd12,删除每行开头的所有空格。sed 's/^ *//' install.logsed -n 's/^\ *//p' /etc/samba/smb.confsed -nr 's/( *)(.*)/\2/p' testp13,用制表符替换文件中出现的所有空格。sed -r 's/( +)/\t/g' install.logsed 's/ /\t/g' ww.txtsed -n 's/\ /\t/gp' pass14,把所有大写字母用括号()括起来。sed 's/[A-Z]/(&)/g' /etc/passwdsed -nr 's/([A-Z])/(&)/gp' testpsed -n 's/[A-Z]/(&)/gp' testp15,打印每行3次。sed -n 'p;p;p' /etc/passwdsed 'p;p' pass16,隔行删除。sed '1d;n;d' ww.txtsed '1~2d' ww.txt sed '0~2d' ww.txt sed -n '1~2p' pass17,把文件从第22行到第33行复制到第56行后面。cat -n /etc/passwd | sed '22h;23,33H;51G'sed '1,21h;22h;23,33H;44G' pass18,把文件从第22行到第33行移动到第56行后面。cat -n /etc/passwd | sed '22{h;d};23,33{H;d};51G'sed '22{h;d};23,33{H;d};44G' pass19,只显示每行的第一个单词sed -r 's/([a-Z]+)(.*)/\1/' install.logsed -nr 's/([^a-Z]*)([a-Z]+)([^a-Z]+)(.*)/\2/p' /etc/passwd20,打印每行的第一个单词和第三个单词。sed -r 's/([a-Z]+)([^a-Z]+)([a-Z]+)(.*)/\1\3/' install.logsed -r 's/([^a-Z]*)([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)([a-Z]+)(.*)/\2\6/' /etc/passwdsed -nr 's/([^a-Z]*)([a-Z]+)([^a-Z]+)([a-Z]+)([^a-Z]+)([a-Z]+)(.*)/\2--\4/p' /etc/passwd21,将格式为 mm/yy/dd 的日期格式换成 mm;yy;ddecho mm/yy/dd | sed -n 's#/#;#gp'date +%m/%Y/%d |sed -n 's#/#;#gp'sed -r 's@/@;@g' /etc/passwd