仓酷云

标题: 带来一篇Centos下令――tr [打印本页]

作者: 变相怪杰    时间: 2015-1-14 21:17
标题: 带来一篇Centos下令――tr
欢迎大家来到仓酷云论坛!tr用来从尺度输出中经由过程交换或删除操纵举行字符转换。tr次要用于删除文件中把持字符或举行字符转换。
出格要注重一点:tr只能举行字符的交换、缩减和删除,不克不及用来交换字符串。

tr下令格局为:
tr-c-d-s["string1_to_translate_from"]["string2_to_translate_to"]file
这里:
  -c  :用字符串1中字符集的补集交换此字符集,请求字符集为ASCII。
  -d  :删除字符串1中一切输出字符。
  -s  :删除一切反复呈现字符序列,只保存第一个;行将反复呈现字符串紧缩为一个字符串。
  file  :是转换文件名。固然可使用其他格局输出,但这类格局最经常使用。

字符局限:
指定字符串1或字符串2的内容时,只能利用单字符或字符串局限或列表。
[a-z]a-z内的字符构成的字符串。
[A-Z]A-Z内的字符构成的字符串。
[0-9]数字串。
octal一个三位的八进制数,对应无效的ASCII字符。
[O*n]暗示字符O反复呈现指定次数n。因而[O*2]婚配OO的字符串。
tr中特定把持字符的分歧表达体例
速记符寄义八进制体例
aCtrl-G铃声07
Ctrl-H退格符10
fCtrl-L走行换页14

Ctrl-J新行12

Ctrl-M回车15
        Ctrl-Itab键11
vCtrl-X30
使用例子
(1)往除oops.txt内里的反复的小写字符(#-s会保存第一个字符)
[root@localhost~]#catoops.txt
  ddddfffabccccc
  lerrrrdddd
[root@localhost~]#tr-s"[a-z]"<oops.txt>result.txt
[root@localhost~]#catresult.txt
  dfabc
  lerd

(2)删除空行
[root@localhost~]#catoops.txt
  ddddfffabccccc




  lerrrrdddd
[root@localhost~]#tr-s"[12]"<oops.txt>result.txt
[root@localhost~]#catresult.txt
  ddddfffabccccc
  lerrrrdddd

(3)删除一切空行
[root@localhost~]#catoops.txt
  ddddfffabccccc




  lerrrrdddd
[root@localhost~]#tr-d"[12]"<oops.txt>result.txt
[root@localhost~]#catresult.txt
  ddddfffabccccclerrrrdddd

(4)小写到年夜写
[root@localhost~]#catoops.txt
  ddddfffabccccc
  errrrdddd
[root@localhost~]#catoops.txt|tr"[a-z]""[A-Z]">result.txt
[root@localhost~]#catresult.txt
  DDDDFFFABCCCCC
  ERRRRDDDD


(5)删除指定的字符(#-d与-s分歧,-d会全体删除,但-s会保存第一个)
[root@localhost~]#catoops.txt
  ddddfffabccccc
  errrrdddd
[root@localhost~]#catoops.txt|tr-d"[bd]">result.txt
[root@localhost~]#catresult.txt
  fffaccccc
  errrr
[root@localhost~]#catoops.txt|tr-s"[bd]">result.txt
[root@localhost~]#catresult.txt
  dfffabccccc
  errrrd

(6)替换指定的字符(#一对一的替换)
[root@localhost~]#catoops.txt
  ddddfffabccccc
  errrrdddd
[root@localhost~]#catoops.txt|tr"[bd]""[BD]">result.txt
[root@localhost~]#catresult.txt
  DDDDfffaBccccc
  errrrDDDD如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
作者: 因胸联盟    时间: 2015-1-17 10:02
即便是非英语国家的人发布技术文档,Linux也都首先翻译成英语在国际学术杂志和网络上发表。
作者: 分手快乐    时间: 2015-1-25 17:20
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
作者: 简单生活    时间: 2015-2-3 12:30
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
作者: 小魔女    时间: 2015-2-9 02:24
学习Linux应具备的。[书籍+网络资源]
作者: 灵魂腐蚀    时间: 2015-2-26 19:04
Linux的成功就在于用最少的资源最短的时间实现了所有功能,这也是符合人类进化的,相信以后节能问题会日益突出。
作者: 第二个灵魂    时间: 2015-3-8 17:03
如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。
作者: admin    时间: 2015-3-16 10:38
应对Linux的发展历史和特点有所了解,Linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具。
作者: 小女巫    时间: 2015-3-22 23:00
对于英语不是很好的读者红旗 Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。




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