99%的 Linux 用户还不会:tr 命令让文本转换快到飞起
Linux预计阅读 5 分钟 · 共 1812 字一条tr命令解决文本处理难题
命令行界的“查找-替换”大师
作为 Linux 用户,你是否经常为日志大小写混乱、数据分隔符转换、配置文件批量修改而头疼?不用打开VS Code,也不用写复杂脚本,一条tr命令就能搞定!
tr(translate)是Linux里最轻量、最快的文本转换工具之一,被称为 命令行界的“查找-替换”大师。
echo"hello linux tips" | tr'a-z''A-Z'echo"HELLO LINUX" | tr'A-Z''a-z'echo"a,b,c,d,e" | tr','' 'cat app.log | tr'a-z''A-Z' | grep ERRORcat error.log | tr' ''\n'cat data.csv | tr',''\t' > data.tsvecho"user123abc456" | tr -d '0-9'echo"hello, world! nice?" | tr -d '[:punct:]'echo$PATH | tr'[:upper:]''[:lower:]' | | |
-d | | tr -d '0-9' |
-s | | tr -s ' ' |
-c | | tr -c 'a-z' '\n' |
[:class:] | | [:lower:][:upper:][:space:][:punct:] |
echo"Hello@123!World" | tr -cd'[:alnum:]' | tr'A-Z''a-z'alias upper="tr 'a-z' 'A-Z'"alias lower="tr 'A-Z' 'a-z'"alias unspace="tr -s ' '"echo"hello world" | uppercat log.txt | lower | unspace工具对比
- tr:简单字符转换,速度最快
- sed:复杂模式匹配与替换
- awk:列处理与数据统计
选型建议
根据任务复杂度灵活选择:轻量转换用 tr,模式匹配用 sed,结构化数据用 awk。
下一期想看 sed 进阶、awk 实战 还是 find + xargs 组合技?欢迎留言!