仓酷云

标题: 来一发linux-sed-非交互性文本流编纂器 [打印本页]

作者: 简单生活    时间: 2015-1-16 14:39
标题: 来一发linux-sed-非交互性文本流编纂器
网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rloginrcp、finger、mail、nslookup
Sed是一个非交互性文本流编纂器。它编纂文件或尺度输出导出的文本拷贝
实例
1.行的婚配
[root@mypc/]#sed-n‘2p’/etc/passwd打印出第2行
[root@mypc/]#sed-n‘1,3p’/etc/passwd打印出第1到第3行
[root@mypc/]#sed-n‘$p’/etc/passwd打印出最初一行
[root@mypc/]#sed-n‘/user/’p/etc/passwd打印出含有user的行
rpc:x:32:32:PortmapperRPCuser:/:/sbin/nologin
rpcuser:x:29:29:RPCServiceUser:/var/lib/nfs:/sbin/nologin
[root@mypc/]#sed-n‘/$/’p/etc/passwd打印出含有$元字符的行,$意为最初一行
2.拔出文本和附加文本(拔出新行)
[root@mypc/]#sed-n‘/FTP/p’/etc/passwd打印出有FTP的行
ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
[root@mypc/]#sed‘/FTP/a456′/etc/passwd在含有FTP的行前面新拔出一行,内容为456
[root@mypc/]#sed‘/FTP/i123′/etc/passwd在含有FTP的行后面新拔出一行,内容为123
[root@mypc/]#sed‘/FTP/i“123″‘/etc/passwd在含有FTP的行后面新拔出一行,内容为”123″
[root@mypc/]#sed‘5a123′/etc/passwd在第5行后拔出一新行,内容为123
[root@mypc/]#sed‘5i“12345″‘/etc/passwd在第5行前拔出一新行,内容为”12345″
3.删除文本
[root@mypc/]#sed‘1d’/etc/passwd删除第1行
[root@mypc/]#sed‘1,3d’/etc/passwd删除第1至3行
[root@mypc/]#sed‘/user/d’/etc/passwd删除带有user的行
4.交换文本,交换命令用交换形式交换指定形式,格局为:
[address[,address]]s/pattern-to-find/replacement-pattern/[gpwn]
[root@mypc/]#sed’s/user/USER/’/etc/passwd将第1个user交换成USER,g标明全局交换
[root@mypc/]#sed’s/user/USER/g’/etc/passwd将一切user交换成USER
[root@mypc/]#sed’s/user/#user/’/etc/passwd将第1个user交换成#user,如用于屏障感化
[root@mypc/]#sed’s/user//’/etc/passwd将第1个user交换成空
[root@mypc/]#sed’s/user/&11111111111111/’/etc/passwd假如要附加或修正一个很长的字符串,可使用(&)命令,
&命令保留发明形式以便从头挪用它,然后把它放在交换字符串内里,这里是把&放后面
[root@mypc/]#sed’s/user/11111111111111&/’/etc/passwd这里是将&放前面
5.疾速一行命令
上面是一些一行命令集。([]暗示空格,[]暗示tab键)
‘s/.$//g’删除以句点开头行
‘-e/abcd/d’删除包括abcd的行
‘s/[][][]*/[]/g’删除一个以上空格,用一个空格取代
‘s/^[][]*//g’删除行首空格
‘s/.[][]*/[]/g’删除句点后跟两个或更多空格,代之以一个空格
‘/^$/d’删除空行
‘s/^.//g’删除第一个字符
‘s/COL(...)//g’删除紧跟COL的后三个字母
‘s/^///g’从路径中删除第一个
‘s/[]/[]//g’删除一切空格并用tab键替换
‘S/^[]//g’删除行首一切tab键
‘s/[]*//g’删除一切tab键
假如利用sed对文件举行过滤,最好将成绩分红几步,分步实行,且边实行边测试了局

</p>
系统管理相关命令:df、top、free、quota、at、lp、adduser、groupaddkill、crontab、tar、unzip、gunzip、last
作者: 深爱那片海    时间: 2015-1-18 09:06
学习Linux半年了~个人认为不会的多在网上找资料网上有很多资料可以搜索到,LS那位说放手去搞。
作者: 海妖    时间: 2015-1-21 17:28
当然你不需搭建所有服务,可以慢慢来。自己多动手,不要非等着别人帮你解决问题。
作者: 乐观    时间: 2015-1-30 21:34
把这个问题放在其他Linux社区请求帮助也是一种选择。如果Linux得不到答案,请不要以为我们觉得无法帮助你。有时只是看到你问题的人不知道答案罢了。这时换一个社区是不错的选择。
作者: 小女巫    时间: 2015-2-6 16:07
未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。
作者: 透明    时间: 2015-2-17 03:10
虽然大家都比较喜欢漂亮的mm,但是在学 linux 的过程中,还是要多和“男人”接触一下:P 遇到问题的时候,出来看说和上网查之外,就是要多用 linux 下的 man 命令找找帮助。
作者: 小魔女    时间: 2015-3-5 15:08
老实说,第一个程序是在C中编译好的,调试好了才在Linux下运行,感觉用vi比较麻烦,因为有错了不能调试,只是提示错误。
作者: 仓酷云    时间: 2015-3-12 09:01
直到学习Linux这门课以后,我才知道,原来我错了。?
作者: 爱飞    时间: 2015-3-19 19:45
写学习日记,这是学习历程的见证,同时我坚持认为是增强学习信念的法宝。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2