tr是Unix系统非常实用的工具,其实用tr做到的事情,几乎都可用sed做到,你可以把tr当作是实现sed许多基本功能的sed“简体”。我认为tr是简单的“字符”处理工具,而sed是功能非常强大的“字符串”处理工具。
【注意】tr是单个字符处理工具,而不是字符串处理工具!
我自己用过比较实用的例子如下:
1、将文件file中出现的"abc"替换为"xyz"
# cat file | tr "abc" "xyz" > new_file
【注意】这里,凡是在file中出现的"a"字母,都替换成"x"字母,"b"字母替换为"y"字母,"c"字母替换为"z"字母。而不是将字符串"abc"替换为字符串"xyz"。
2、使用tr命令“统一”字母大小写
(小写 --> 大写)
# cat file | tr [a-z] [A-Z] > new_file
# cat file | tr [a-z] [A-Z] > new_file
(大写 --> 小写)
# cat file | tr [A-Z] [a-z] > new_file
# cat file | tr [A-Z] [a-z] > new_file
3、把文件中的数字0-9替换为a-j
# cat file | tr [0-9] [a-j] > new_file
4、删除文件file中出现的"Snail"字符
# cat file | tr -d "Snail" > new_file
【注意】这里,凡是在file文件中出现的'S','n','a','i','l'字符都会被删除!而不是紧紧删除出现的"Snail”字符串。
5、删除文件file中出现的换行'/n'、制表'/t'字符
# cat file | tr -d "/n/t" > new_file
不可见字符都得用转义字符来表示的,这个都是统一的。
6、删除“连续着的”重复字母,只保留第一个
# cat file | tr -s [a-zA-Z] > new_file
7、删除空行
# cat file | tr -s "/n" > new_file
8、删除Windows文件“造成”的'^M'字符
# cat file | tr -d "/r" > new_file
或者
# cat file | tr -s "/r" "/n" > new_file
或者
# cat file | tr -s "/r" "/n" > new_file
【注意】这里-s后面是两个参数"/r"和"/n",用后者替换前者
9、用空格符/040替换制表符/011
# cat file | tr -s "/011" "/040" > new_file
10、把路径变量中的冒号":",替换成换行符"/n"
# echo $PATH | tr -s ":" "/n"
tr -c -d -s ["string1_to_translate_from"] ["string2_to_translate_to"] < input-file
tr用来从标准输入中通过替换或删除操作进行字符转换。tr主要用于删除文件中控制字符或进行字符转换。使用tr时要转换两个字符串:字符串1用于查询,字符串2用于处理各种转换。tr刚执行时,字符串1中的字符被映射到字符串2中的字符,然后转换操作开始。
参数:
-c或--complerment 取代所有不属于第一字符集的字符。
-d或--delete 删除所有属于第一字符集的字符。
-s或--squeeze-repeats 把连续重复的字符以单独一个字符表示。
-t或--truncate-set1 这个比较难理解,man上面的解释是:first truncate SET1 to length of SET2,经过我的实践发现,将set1的字符依次替换成set2中的字符,如果set1中的字符数目超过set2,那么set1多出的字符忽略。如果没有-t,那么多出的字符都替换成set2的最后一个字符。
--help 在线帮助。
--version 显示版本信息。
参数:
-c或--complerment 取代所有不属于第一字符集的字符。
-d或--delete 删除所有属于第一字符集的字符。
-s或--squeeze-repeats 把连续重复的字符以单独一个字符表示。
-t或--truncate-set1 这个比较难理解,man上面的解释是:first truncate SET1 to length of SET2,经过我的实践发现,将set1的字符依次替换成set2中的字符,如果set1中的字符数目超过set2,那么set1多出的字符忽略。如果没有-t,那么多出的字符都替换成set2的最后一个字符。
--help 在线帮助。
--version 显示版本信息。
相关推荐
本资源"Linux命令大全"包含了516个Linux命令的详细资料,对于学习和理解Linux操作系统至关重要。下面,我们将深入探讨这个资源中涉及的一些关键知识点。 1. **命令手册**: - 在Linux世界中,命令手册(man pages...
Linux下tr命令是一种用于转换或删除字符的命令行工具。它非常适合处理文本数据,尤其在数据清洗和预处理阶段。tr命令可以对输入的文本执行字符替换、删除或压缩操作。以下是一些关于tr命令的具体知识点和实用例子。 ...
Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集。 Linux命令分类 这里存放Linux 命令大全并不全,你可以通过linux-command来搜索,它是把 command 目录里面搜集的...
- tr命令用于替换、删除或缩减字符。 4. Linux压缩备份命令 这部分涉及到Linux系统中用于文件压缩和备份的命令。 - ar命令创建、修改以及提取归档文件。 - bunzip2、bzip2和gzip命令用于文件压缩与解压缩。 - tar...
curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -oP '"tag_name": "\K[^"]+' | tr -d '\n')/docker-compose-Linux-...
linux shell命令tr的用法
- **Tr命令**:Tr用于删除或替换文件中的字符。 - **Xargs命令**:Xargs能将标准输入的数据转换成命令行参数。 - **Sort命令**:用于排序文本文件。 - **Uniq命令**:Uniq用于去除文件中重复的行。 - **Cut命令**:...
Linux命令详解手册是一本适合Linux新手和有一定基础的用户深入学习Linux命令的指南。它详细介绍了大量的Linux命令,涵盖了系统管理、系统设置、文档编辑以及压缩备份等多个方面的操作。掌握这些命令对于理解和使用...
### tr命令的用法 #### 一、简介 在Linux环境下,`tr`是一个非常强大的命令行工具,用于实现字符的替换、删除等操作。它简单而高效,常常被用来预处理文本数据,例如清洗日志文件、转换大小写、删除特定字符等。...
tr命令可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令,作用很强大。 tr的英文全称是“ transform ”,即转换的意思。tr他只能从标准输入中读取数据,...
#### Hack-12 Tr命令 `tr` 命令用于转换字符。它可以用来清理文本中的特殊字符或进行简单的文本转换。例如,`tr '[:upper:]' '[:lower:]' < input.txt > output.txt` 可以将输入文件中的大写字母转换为小写并输出到...
grep 命令是 Linux 系统中最常用的文本处理工具之一,它可以根据用户指定的模式对目标文本逐行进行匹配检查,并打印匹配到的行。grep 命令的格式为:grep [OPTIONS] PATTERN [FILE...] 其中,OPTIONS 是可选参数,...
tr用来转换或者删除一段文字。tr是translate(转换的缩写),功能的英文示意是:translate or delete characters。tr所有的功能均可由sed来完成,可以将tr视为sed一个极简的实现。 2.格式 tr [OPTION]... SET1 [SET...
Shell程序设计 - 命令 tr.mp4,,Linux系统shell编程培训课程视频,大厂内部员工培训资料,欢迎下载学习
Linux tr命令 Linux tr 命令用于转换或删除文件中的字符。 tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。 语法 tr [-cdst][--help][--version][第一字符集][第二字符集] tr ...