tr 命令-转换/删除文件字符
编辑教程tr命令
tr 命令用于转换或删除文件中的字符。
tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。
语法
tr [-cdst][--help][--version][第一字符集][第二字符集]
tr [OPTION]…SET1[SET2]
参数
-c, --complement | 反选设定字符。符合 SET1 部份不做处理,不符合剩余部份进行转换 |
---|---|
-d, --delete | 删除指令字符 |
-s, --squeeze-repeats | 缩减连续重复的字符成指定的单个字符 |
-t, --truncate-set1 | 削减 SET1 指定范围,使之与 SET2 设定长度相等 |
--help | 显示程序用法信息 |
--version | 显示程序本身的版本信息 |
字符集合的范围:
\NNN | 八进制值的字符 NNN (1 to 3 为八进制值的字符) |
---|---|
\ | 反斜杠 |
\a Ctrl-G | 铃声 |
\b Ctrl-H | 退格符 |
\f Ctrl-L | 走行换页 |
\n Ctrl-J | 新行 |
\r Ctrl-M | 回车 |
\t Ctrl-I | tab键 |
\v Ctrl-X | 水平制表符 |
CHAR1-CHAR2 | 字符范围从 CHAR1 到 CHAR2 的指定,范围的指定以 ASCII 码的次序为基础,只能由小到大,不能由大到小。 |
[CHAR*] | 这是 SET2 专用的设定,功能是重复指定的字符到与 SET1 相同长度为止 |
[CHAR*REPEAT] | 这也是 SET2 专用的设定,功能是重复指定的字符到设定的 REPEAT 次数为止(REPEAT 的数字采 8 进位制计算,以 0 为开始) |
[:alnum:] | 所有字母字符与数字 |
[:alpha:] | 所有字母字符 |
[:blank:] | 所有水平空格 |
[:cntrl:] | 所有控制字符 |
[:digit:] | 所有数字 |
[:graph:] | 所有可打印的字符(不包含空格符) |
[:lower:] | 所有小写字母 |
[:print:] | 所有可打印的字符(包含空格符) |
[:punct:] | 所有标点字符 |
[:space:] | 所有水平与垂直空格符 |
[:upper:] | 所有大写字母 |
[:xdigit:] | 所有 16 进位制的数字 |
[=CHAR=] | 所有符合指定的字符(等号里的 CHAR,代表可自订字符) |
实例
将文件testfile中的小写字母全部转换成大写字母,此时,可使用如下命令:
cat testfile |tr a-z A-Z
testfile文件中的内容如下:
$ cat testfile #testfile原来的内容
Linux networks are becoming more and more common,
but scurity is often an overlooked
issue. Unfortunately, in today’s environment all networks
are potential hacker targets,
fro0m tp-secret military research networks to small home LANs.
Linux Network Securty focuses on securing Linux in a
networked environment, where the
security of the entire network needs to be considered
rather than just isolated machines.
It uses a mix of theory and practicl techniques to
teach administrators how to install and
use security applications, as well as how the
applcations work and why they are necesary.
使用 tr 命令大小写转换后,得到如下输出结果:
$ cat testfile | tr a-z A-Z #转换后的输出
LINUX NETWORKS ARE BECOMING MORE AND MORE COMMON, BUT SCURITY IS OFTEN AN OVERLOOKED
ISSUE. UNFORTUNATELY, IN TODAY’S ENVIRONMENT ALL NETWORKS ARE POTENTIAL HACKER TARGETS,
FROM TP-SECRET MILITARY RESEARCH NETWORKS TO SMALL HOME LANS.
LINUX NETWORK SECURTY FOCUSES ON SECURING LINUX IN A NETWORKED ENVIRONMENT, WHERE THE
SECURITY OF THE ENTIRE NETWORK NEEDS TO BE CONSIDERED RATHER THAN JUST ISOLATED MACHINES.
IT USES A MIX OF THEORY AND PRACTICL TECHNIQUES TO TEACH ADMINISTRATORS HOW TO INSTALL AND
USE SECURITY APPLICATIONS, AS WELL AS HOW THE APPLCATIONS WORK AND WHY THEY ARE NECESARY.
大小写转换,也可以通过[:lower][:upper]参数来实现。例如使用如下命令:
cat testfile |tr [:lower:] [:upper:]
输出结果如下:
$ cat testfile | tr [:lower:] [:upper:] #转换后的输出
LINUX NETWORKS ARE BECOMING MORE AND MORE COMMON, BUT SCURITY IS OFTEN AN OVERLOOKED
ISSUE. UNFORTUNATELY, IN TODAY’S ENVIRONMENT ALL NETWORKS ARE POTENTIAL HACKER TARGETS,
FROM TP-SECRET MILITARY RESEARCH NETWORKS TO SMALL HOME LANS.
LINUX NETWORK SECURTY FOCUSES ON SECURING LINUX IN A NETWORKED ENVIRONMENT, WHERE THE
SECURITY OF THE ENTIRE NETWORK NEEDS TO BE CONSIDERED RATHER THAN JUST ISOLATED MACHINES.
IT USES A MIX OF THEORY AND PRACTICL TECHNIQUES TO TEACH ADMINISTRATORS HOW TO INSTALL AND
USE SECURITY APPLICATIONS, AS WELL AS HOW THE APPLCATIONS WORK AND WHY THEY ARE NECESARY.
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付
¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟