千家信息网

Linux系统中tr命令怎么用

发表于:2024-11-14 作者:千家信息网编辑
千家信息网最后更新 2024年11月14日,这篇文章主要为大家展示了"Linux系统中tr命令怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Linux系统中tr命令怎么用"这篇文章吧。tr 转
千家信息网最后更新 2024年11月14日Linux系统中tr命令怎么用

这篇文章主要为大家展示了"Linux系统中tr命令怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Linux系统中tr命令怎么用"这篇文章吧。

tr 转换,压缩,截短,删除字符
tr [option].....set1 [set2]

参数:
-d,--delete
删除字符串1中的字符,不进行转换。
-s,--squeeze-repeats
将重复出现字符串压缩为一个字符串。
-t,--truncate-set1
将字符串1的长度截成字符串2的长度。
-c,--complement
取字符串1的补集。要求字符集为ASCII。
--help 打印帮助。
--version 显示版主信息。
转义字符如下:
\NNN 字符的八进制码
\\ 反斜线
\a BELL响铃
\b 空格
\c 不打印新行符
\n 新行
\r 回车
\t 横向跳格
\v 坚向跳格
字符模式:
CHAR1-CHAR2 表示从字符CHAR1到CHAR2.如a-z,A-Z...
[CHAR*] 表示一个或连续几个CHAR。
[CHAR*REPEAT] 表示REPEAT个数个CHAR。
[:alnum:] 表示所有字母和数字。
[:alpha:] 表示所有字母。
[:blank:] 表示横向空格。
[:cntrl:] 表示控制字符。
[:digit:] 表示所有数字。
[:graph:] 表示可打印字符,不包括空格。
[:lower:] 表示小写字母。
[:upper:] 表示大写字母。
[:print:] 表示可打印字符,包括空格。
[:xdigit:] 表示十六进制数字。
[=CHAR=] 表示CHAR

例子:

(1)去除oops.txt里面的重复的小写字符

代码如下:

tr -s "[a-z]"result.txt

(2)删除空行

代码如下:

tr -s "[\012]" < plan.txt 或 tr -s ["\n"] < plan.txt

(3)有时需要删除文件中的^M,并代之以换行

代码如下:

tr -s "[\015]" "[\n]" < file 或 tr -s "[\r]" "[\n]" < file

(4)大写到小写

代码如下:

cat a.txt |tr "[a-z]" "[A-Z]" >b.txt

(5)删除指定字符
一个星期的日程表。任务是从其中删除所有数字,只保留日期。日期有大写,也有小写格式。因此需指定两个字符范围[a-z]和[A-Z],命令tr -cs "[a-z][A-Z]" "[\012*]" 将文件每行所有不包含在[a-z]或[A-Z](所有希腊字母)的字符串放在字符串1中并转换为一新行。-s选项表明压缩所有新行, -c表明保留所有字母不动。原文件如下,后跟tr命令:

代码如下:

tr -cs "[a-z][A-Z]" "[\012*]"

(6)转换控制字符
tr的第一个功能就是转换控制字符,特别是从dos向UNIX下载文件时,忘记设置ftp关于回车换行转换的选项时更是如此。cat -v filename 显示控制字符。

代码如下:

cat -v stat.txt
box aa^^^^^12^M
apple bbas^^^^23^M
^Z

猜想『^ ^ ^ ^ ^ ^』是tab键。每一行以Ctrl-M结尾,文件结尾Ctrl-Z,以下是改动方法。
使用-s选项,查看ASCII表。^的八进制代码是136,^M是015,tab键是011,^Z是032 ,下面将按步骤完成最终功能。
用tab键替换^ ^ ^ ^ ^ ^,命令为"\136" "[\011*]"。将结果重定向到临时工作文件stat.tmp

代码如下:

tr -s "[\136]" "[\011*]" stat.tmp

用新行替换每行末尾的^M,并用\n去除^Z,输入要来自于临时工作文件stat.tmp。

代码如下:

tr -s "[\015][\032]" "\n"

要删除所有的tab键,代之以空格,使用命令

代码如下:

tr -s "[\011]" "[\040*]"

(7)替换passwd文件中所有冒号,代之以tab键,可以增加可读性

代码如下:

tr -s "[:]" "[\011]" < /etc/passwd 或 tr -s "[:]" "[\t]" < /etc/passwd

(8)使路径具有可读性
如果用 echo $PATH 或者 echo $LD_LIBRARY_PATH 等类似的命令来显示路径信息的话,我们看到的将会是一大堆用冒号连接在一起的路径, tr命令可以把这些冒号转换为回车,这样,这些路径就具有很好的可读性了

代码如下:

echo $PATH | tr ":" "\n"

(9)可以在vi内使用所有这些命令!只要记住:在tr命令前要加上您希望处理的行范围和感叹号 (!),如 1,$!tr -d '\t'(美元符号表示最后一行)。

以上是"Linux系统中tr命令怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

字符 代码 命令 字符串 文件 字母 空格 小写 数字 路径 新行 控制 系统 内容 冒号 可读性 大写 篇文章 帮助 一行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 杭州市奕天网络技术有限公司 水星添加虚拟服务器 云服务器防护软件大全 服务器零配件 16轴服务器 分布式数据库可以建吗 网络安全科技馆攻略 网络安全教育宣讲新闻 闲置笔记本做网站服务器 数据库应用技术答案第一版 dota2设置更新服务器 智能化管理服务器 自动化交易软件开发 数据库有学生表 成绩表 新乡软件开发报价 linux查看服务器规格命令 我的世界1.14服务器怎么出售 湖南钜升畅安互联网科技有限公司 南京点金石网络技术有限公司 嵌入式软件和软件开发的区别 司法局参加网络安全宣传周活动 软件开发和软件设计一样不 摩尔庄园不一个服务器能一起玩吗 软件开发免费资料微信公众号 网络服务器终端怎么重新设置密码 江苏软件开发口碑推荐 python服务器远程管理 数据库和数据库系统时间 vb 创建数据库和表 网络安全防御技术发展
0