`

linux - tr命令

 
阅读更多
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
 
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
 
【注意】这里-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   显示版本信息。 
 
分享到:
评论

相关推荐

    Linux命令搜索工具linux-command.zip

    Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集。   Linux命令分类 这里存放Linux 命令大全并不全,你可以通过linux-command来搜索,它是把 command 目录里面搜集的...

    Linux下tr命令“字符”处理的实用例子

    本文主要介绍了 Linux下tr命令“字符”处理的实用例子,希望对您的学习有所帮助。

    linux shell命令tr的用法

    linux shell命令tr的用法

    tr命令的用法

    Linux下bash命令tr用法的介绍,字符操作

    Linux tr命令的使用方法

    tr命令可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令,作用很强大。 tr的英文全称是“ transform ”,即转换的意思。tr他只能从标准输入中读取数据,...

    Linux tr命令的使用

    tr用来转换或者删除一段文字。tr是translate(转换的缩写),功能的英文示意是:translate or delete characters。tr所有的功能均可由sed来完成,可以将tr视为sed一个极简的实现。 2.格式 tr [OPTION]... SET1 [SET...

    Linux tr命令用法详解

    Linux tr命令 Linux tr 命令用于转换或删除文件中的字符。 tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。 语法 tr [-cdst][--help][--version][第一字符集][第二字符集] tr ...

    Linux shell tr 命令详解

    主要介绍了Linux shell tr 命令详解的相关资料,需要的朋友可以参考下

    Linux文本处理命令合集

    主要涉及shell脚本中文本处理常见命令,diff/patch查找文本差异,字符串截取cut、tr、uniq等

    linux 核心命令源码

    linux 核心命令源码(cp mv cat chgrp chown cut date df du echo env expand expr find force fs group head hostname join kill link ls mkdir mv nice od paste printf ptx rm selinux seq sleep sort split stat...

    linux常用命令源码(ls,cp,chmod,df等一百多个命令)

    linux下大部分常用命令源码,偶正要开始学习-_- base64.c basename.c c99-to-c89.diff cat.c chcon.c chgrp.c chmod.c chown.c chown-core.c chown-core.h chroot.c cksum.c comm.c copy.c cp.c cp-hash.c csplit.c ...

    dpkg-trigger命令 软件包触发器

    dpkg-trigger命令是Debian linux下的软件包触发器。 dpkg-trigger命令只能应用在维护者脚本中,或者必须使用“- — by-package”参数。 语法格式 : dpkg-trigger [参数] [触发器] 常用参数: — -check-...

    Linux命令大全完整版

    Linux命令大全完整版 目 录 目 录 I 1. linux系统管理命令 1 adduser 1 chfn(change finger information) 1 chsh(change shell) 1 date 2 exit 3 finger 4 free 5 fwhois 5 gitps(gnu interactive tools ...

    Linux重点命令(sed、awk、grep、tr等)详解教程大全.docx

    Linux重点命令(sed、awk、grep、tr等)详解教程大全

    Linux网络操作系统基础:文件处理tr和sed命令.pptx

    Linux网络操作系统基础:文件处理tr和sed命令.pptx

    LINUX与UNIX SHELL编程指南

    012-tr 用法.PDF 013-登录环境.PDF 014-环境和shell变量.PDF 015-引号.PDF 016-shell脚本介绍.PDF 017-条件测试.PDF 018-控制流结构.PDF 019-shell 函数.PDF 020-向脚本传递参数.PDF 021-创建屏幕输出.PDF 022-创建...

Global site tag (gtag.js) - Google Analytics