tr用法
来源:互联网 发布:java打印123直角三角形 编辑:程序博客网 时间:2024/04/30 08:53
1、关于tr
tr用来从标准输入中通过替换或删除操作进行字符转换。t r主要用于删除文件中控制字符
或进行字符转换。
带有最常用选项的tr命令格式为:
tr - c - d - s [ " s t r i n g 1 _ t o _ t r a n s l a t e _ f r o m " ] [ " s t r i n g 2 _ t o _ t riannpsulta_t e _ t o " ]
file
这里:
-c 用字符串1中字符集的补集替换此字符集,要求字符集为A S C I I。
-d 删除字符串1中所有输入字符。
-s 删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符
串。
Input - file是转换文件名。虽然可以使用其他格式输入,但这种格式最常用。
2、字符范围
指定字符串1或字符串2的内容时,只能使用单字符或字符串范围或列表
[a-z] a-z内的字符组成的字符串。
[A-Z] A-Z内的字符组成的字符串。
[0-9] 数字串。
/octal 一个三位的八进制数,对应有效的A S C I I字符。
[O*n] 表示字符O重复出现指定次数n。因此[ O * 2 ]匹配O O的字符串。
tr中特定控制字符的不同表达方式
速记符含义八进制方式
/ a Ctrl-G 铃声/ 0 0 7
/ b Ctrl-H 退格符/ 0 1 0
/f Ctrl-L 走行换页/ 0 1 4
/n Ctrl-J 新行/ 0 1 2
/ r Ctrl-M 回车/ 0 1 5
/t Ctrl-I tab键/ 0 11
/ v Ctrl-X / 0 3 0
3、例子
去除oops.txt里面的重复字符
tr -s "[a-z]"<oops.txt >result.txt
删除空行
tr -s "[/012]" <plan.txt 或 tr -s ["/n"] <plan.txt
大写到小写
cat a.txt |tr "[a-z]" "[A-Z]" >b.txt
删除指定字符
一个星期的日程表。任务是从其中删除所有数字,只保留日期。日期有大
写,也有小写格式。因此需指定两个字符范围[ a - z ]和[ A - Z ],命令tr -cs "[a-z][A-Z]""[/012*]"将
文件每行所有不包含在[ a - z ]或[ A - Z ](所有希腊字母)的字符串放在字符串1中并转换为一新
行。- s选项表明压缩所有新行, - c表明保留所有字母不动。原文件如下,后跟t r命令:
tr -cs "[a-z][A-Z]" "[/012*]" <diary.txt
转换控制字符
tr的第一个功能就是转换控制字符,特别是从d o s向U N I X下载文件时,忘记设置f t p关于回
车换行转换的选项时更是如此.cat -v filename 显示控制字符。
cat -v stat.txt
box aa^^^^^12^M
apple bbas^^^^23^M
^Z
猜想‘^ ^ ^ ^ ^ ^’是t a b键。每一行以C t r l - M结尾,文件结尾C t r l - Z,以下是改动方法。
使用- s选项,查看A S C I I表。^的八进制代码是1 3 6,^ M是0 1 5,t a b键是0 11,^ Z是0 3 2 ,下
面将按步骤完成最终功能。
用t a b键替换^ ^ ^ ^ ^ ^,命令为" / 1 3 6 " " [ / 0 11 * ] "。将结果重定向到临时工作文件stat.tmp
tr -s "[/136]" "[/011*]" <stat.txt >stat.tmp
用新行替换每行末尾的^ M,并用/ n去除^ Z,输入要来自于临时工作文件stat.tmp。
tr -s "[/015][/032]" "/n" <stat.tmp
要删除所有的t a b键,代之以空格,使用命令
tr -s "[/011]" "[/040*]" <input.file
注:都可以用sed 来完成
tr用来从标准输入中通过替换或删除操作进行字符转换。t r主要用于删除文件中控制字符
或进行字符转换。
带有最常用选项的tr命令格式为:
tr - c - d - s [ " s t r i n g 1 _ t o _ t r a n s l a t e _ f r o m " ] [ " s t r i n g 2 _ t o _ t riannpsulta_t e _ t o " ]
file
这里:
-c 用字符串1中字符集的补集替换此字符集,要求字符集为A S C I I。
-d 删除字符串1中所有输入字符。
-s 删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符
串。
Input - file是转换文件名。虽然可以使用其他格式输入,但这种格式最常用。
2、字符范围
指定字符串1或字符串2的内容时,只能使用单字符或字符串范围或列表
[a-z] a-z内的字符组成的字符串。
[A-Z] A-Z内的字符组成的字符串。
[0-9] 数字串。
/octal 一个三位的八进制数,对应有效的A S C I I字符。
[O*n] 表示字符O重复出现指定次数n。因此[ O * 2 ]匹配O O的字符串。
tr中特定控制字符的不同表达方式
速记符含义八进制方式
/ a Ctrl-G 铃声/ 0 0 7
/ b Ctrl-H 退格符/ 0 1 0
/f Ctrl-L 走行换页/ 0 1 4
/n Ctrl-J 新行/ 0 1 2
/ r Ctrl-M 回车/ 0 1 5
/t Ctrl-I tab键/ 0 11
/ v Ctrl-X / 0 3 0
3、例子
去除oops.txt里面的重复字符
tr -s "[a-z]"<oops.txt >result.txt
删除空行
tr -s "[/012]" <plan.txt 或 tr -s ["/n"] <plan.txt
大写到小写
cat a.txt |tr "[a-z]" "[A-Z]" >b.txt
删除指定字符
一个星期的日程表。任务是从其中删除所有数字,只保留日期。日期有大
写,也有小写格式。因此需指定两个字符范围[ a - z ]和[ A - Z ],命令tr -cs "[a-z][A-Z]""[/012*]"将
文件每行所有不包含在[ a - z ]或[ A - Z ](所有希腊字母)的字符串放在字符串1中并转换为一新
行。- s选项表明压缩所有新行, - c表明保留所有字母不动。原文件如下,后跟t r命令:
tr -cs "[a-z][A-Z]" "[/012*]" <diary.txt
转换控制字符
tr的第一个功能就是转换控制字符,特别是从d o s向U N I X下载文件时,忘记设置f t p关于回
车换行转换的选项时更是如此.cat -v filename 显示控制字符。
cat -v stat.txt
box aa^^^^^12^M
apple bbas^^^^23^M
^Z
猜想‘^ ^ ^ ^ ^ ^’是t a b键。每一行以C t r l - M结尾,文件结尾C t r l - Z,以下是改动方法。
使用- s选项,查看A S C I I表。^的八进制代码是1 3 6,^ M是0 1 5,t a b键是0 11,^ Z是0 3 2 ,下
面将按步骤完成最终功能。
用t a b键替换^ ^ ^ ^ ^ ^,命令为" / 1 3 6 " " [ / 0 11 * ] "。将结果重定向到临时工作文件stat.tmp
tr -s "[/136]" "[/011*]" <stat.txt >stat.tmp
用新行替换每行末尾的^ M,并用/ n去除^ Z,输入要来自于临时工作文件stat.tmp。
tr -s "[/015][/032]" "/n" <stat.tmp
要删除所有的t a b键,代之以空格,使用命令
tr -s "[/011]" "[/040*]" <input.file
注:都可以用sed 来完成
- tr用法
- tr 用法
- tr用法
- tr的详细用法
- tr的详细用法
- tr命令详细用法
- tr用法小结
- tr 命令用法
- tr的用法
- [shell] tr用法
- Linux下tr的用法
- linux tr的详细用法
- **shell中tr的用法**
- Linux tr命令的用法
- linux之sed + tr用法
- SHELL STUDY....tr的用法
- shell中tr的用法
- QT关于tr的用法
- 数据开发-Oracle Trigger
- MY YY
- 10月26日学习总结之C#面向对象编程思想[一]
- 如何知道Inet下载文件的进度
- 在ORACLE里用存储过程定期分割表〔转〕
- tr用法
- 智能客户端概述
- 如何走出第一步
- 手工生成流水号
- 使用 DirectShow SDK 作开发的环境变量配置
- jbpm用户指南翻译:第16章 jBPM流程定义语言(JPDL)
- 把Java程序注册成Windows服务
- 什么是外企素质
- 算法导论学习笔记(1)插入排序