Linux tr命令详解程序员

tr是个简单的替换命令,从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。

tr常见命令参数

用法:tr [选项]... SET1 [SET2] 
从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。 
 
  -c, -C, --complement          首先补足SET1 
  -d, --delete                  删除匹配SET1 的内容,并不作替换 
  -s, --squeeze-repeats 如果匹配于SET1 的字符在输入序列中存在连续的 
                                重复,在替换时会被统一缩为一个字符的长度 
  -t, --truncate-set1           先将SET1 的长度截为和SET2 相等 
      --help            显示此帮助信息并退出 
      --version         显示版本信息并退出 
 
SET 是一组字符串,一般都可按照字面含义理解。解析序列如下: 
 
  /NNN  八进制值为NNN 的字符(1 至3 个数位) 
  //            反斜杠 
  /a            终端鸣响 
  /b            退格 
  /f            换页 
  /n            换行 
  /r            回车 
  /t            水平制表符 
  /v            垂直制表符 
  字符1-字符2   从字符1 到字符2 的升序递增过程中经历的所有字符 
  [字符*]       在SET2 中适用,指定字符会被连续复制直到吻合设置1 的长度 
  [字符*次数]   对字符执行指定次数的复制,若次数以 0 开头则被视为八进制数 
  [:alnum:]     所有的字母和数字 
  [:alpha:]     所有的字母 
  [:blank:]     所有呈水平排列的空白字符 
  [:cntrl:]     所有的控制字符 
  [:digit:]     所有的数字 
  [:graph:]     所有的可打印字符,不包括空格 
  [:lower:]     所有的小写字母 
  [:print:]     所有的可打印字符,包括空格 
  [:punct:]     所有的标点字符 
  [:space:]     所有呈水平或垂直排列的空白字符 
  [:upper:]     所有的大写字母 
  [:xdigit:]    所有的十六进制数 
  [=字符=]      所有和指定字符相等的字符

常用的命令展示

不换行显示

seq 9 | tr "/n" "|"

image

删除多余的空行

cat last.txt | tr -s '/n'

Linux tr命令详解程序员

删除指定的字符

cat last.txt | tr -d '[0-9].'

Linux tr命令详解程序员

大小写转换

cat last.txt | tr '[a-z]'  '[A-Z]'

Linux tr命令详解程序员

字符串去重复

cat last.txt | tr -s '[a-zA-Z]'

Linux tr命令详解程序员

不满足第一列的时候用第二列替代

cat last.txt | tr -c '[a-z][0-9]' '+'

Linux tr命令详解程序员

替换字母权限为数字

 

tr rwx- 4321   
ll h.txt | tr rwx- 4321  
ll   /etc/hosts | tr rwx- 4210| awk -F "" '{print $1+$2+$3 $4+$5+$6 $7+$8+$9}' 
ll   /etc/hosts | cut -c 2-10 | tr rwx- 4210 |awk -F "" '{print $1+$2+$3 $4+$5+$6 $7+$8+$9}'

 

image

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/2977.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论