0

0

linux字符替换或删除是什么-tr命令使用与实例

P粉390130307

P粉390130307

发布时间:2025-08-06 08:14:12

|

245人浏览过

|

来源于php中文网

原创

linux字符替换或删除是什么-tr命令使用与实例

Linux tr命令

在Linux系统中,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 至 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 特有语法,表示重复CHAR直到与SET1长度相同
  • [CHAR*REPEAT] :SET2 特有语法,表示将CHAR重复 REPEAT 次(REPEAT 使用八进制计数,以 0 开始)
  • [:alnum:] :所有字母和数字
  • [:alpha:] :所有字母
  • [:blank:] :所有水平空白字符
  • [:cntrl:] :所有控制字符
  • [:digit:] :所有数字
  • [:graph:] :所有可打印字符(不含空格)
  • [:lower:] :所有小写字母
  • [:print:] :所有可打印字符(含空格)
  • [:punct:] :所有标点符号
  • [:space:] :所有空白符(包括垂直和水平)
  • [:upper:] :所有大写字母
  • [:xdigit:] :所有十六进制数字
  • [=CHAR=] :匹配指定字符(等号内的CHAR可自定义)

示例演示

要将testfile文件中的小写字母全部转换为大写形式,可以执行以下命令:

Copy Leaks
Copy Leaks

AI内容检测和分级,帮助创建和保护原创内容

下载
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. 

除了使用a-z/A-Z直接映射外,还可以通过字符类实现大小写转换。例如:

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. 

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

185

2023.09.27

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

258

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

208

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1465

2023.10.24

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

619

2023.11.24

java读取文件转成字符串的方法
java读取文件转成字符串的方法

Java8引入了新的文件I/O API,使用java.nio.file.Files类读取文件内容更加方便。对于较旧版本的Java,可以使用java.io.FileReader和java.io.BufferedReader来读取文件。在这些方法中,你需要将文件路径替换为你的实际文件路径,并且可能需要处理可能的IOException异常。想了解更多java的相关内容,可以阅读本专题下面的文章。

550

2024.03.22

php中定义字符串的方式
php中定义字符串的方式

php中定义字符串的方式:单引号;双引号;heredoc语法等等。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

545

2024.04.29

go语言字符串相关教程
go语言字符串相关教程

本专题整合了go语言字符串相关教程,阅读专题下面的文章了解更多详细内容。

164

2025.07.29

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.4万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号