您的位置:首页 > 其它

tr

2016-07-12 21:06 260 查看
Usage: tr [OPTION]... SET1 [SET2]

用途:字符转换,将SET1中的字符全部替换为SET2中的字符。如:大小写转换,删除指定字符,浓缩重复字符。

示例:

使用tr做数字相加操作:

来自: http://man.linuxde.net/tr
巧妙使用tr做数字相加操作:

来自: http://man.linuxde.net/tr
巧妙使用tr做数字相加操作:

来自: http://man.linuxde.net/tr
巧妙使用tr做数字相加操作:

来自: http://man.linuxde.net/tr

巧妙使用tr做数字相加操作:

echo 1 2 3 4 5 6 7 8 9 | xargs -n1 | echo $[$(tr '\n' '+')0]

        2. 删除Windows文件“造成”的'^M'字符:

cat file | tr -s "\r" "\n" > new_file 或 cat file | tr -d "\r" > new_file

        3.去掉文件中多余的空行:

             $tr -s "[\012]" < test

             或$tr -s ["\n"]

常用选项:

-c, -C, --complement    使用SET1的补集

-d, --delete            删除SET1中的字符,不做转换

-s, --squeeze-repeats   将输入中连续重复出现的,并且在SET1中的字符浓缩为一个字符

-t, --truncate-set1    先将SET1截断为和SET2一样的长度

SET取值:

  \NNN           1到3个 8进制数表示的字符

  \\              反斜线

  \a              警告声

  \b             退格

  \f              换页

  \n             换行

  \r              回车

  \t              水平制表符

  \v              垂直制表符

  CHAR1-CHAR2     从 CHAR1 到 CHAR2 升序排列的所有字符

  [CHAR*]         在SET2中使用,复制 CHAR 直到SET2和SET1长度一致

  [CHAR*REPEAT]   重复复制CHAR, 如果CHAR以0开头,CHAR作为8进制被重复复制

  [:alnum:]       所有的字母和数字

  [:alpha:]       所有的字母

  [:blank:]       所有的水平空格

  [:cntrl:]       所有的控制字符

  [:digit:]       所有的数字

  [:graph:]       除空格以外的所有打印字符

  [:lower:]      所有的小写字母

  [:print:]       包括空格在内的所有打印字符

  [:punct:]      所有的标点符号

  [:space:]       所有的空格包括换行

  [:upper:]       所有的大写字母

  [:xdigit:]      所有的十六进制数

  [=CHAR=]        所有和CHAR相等的字符
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: