字符转换命令:tr,col,join,paste,expand

      通常在学习或工作过程中,有时需要对处理的数据进行字符替换;要大写改为小写,或将;改为:还有如何将两篇信息整合成一篇信息就需要用到以下命令。

  1. tr 主要用于删除文件中控制字符或进行字符转换;
    参数:
    -d 删除字符串1中所有输入字符。
    -s 删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符串。
    样例:
    (1) ifconfig | tr a-z A-Z
    后面’a-z’ ‘A-Z’ ;[a-z] [A-Z] ;’[a-z]’ ‘[A-Z]’ 都可以执行
    ENS33: FLAGS=4163<UP,BROADCAST,RUNNING,MULTICAST> MTU 1500
    INET 192.168.153.128 NETMASK 255.255.255.0 BROADCAST 192.168.153.255
    INET6 FE80::73F8:EE50:91F6:FE08 PREFIXLEN 64 SCOPEID 0X20
    ETHER 00:0C:29:58:9C:11 TXQUEUELEN 1000 (ETHERNET)
    RX PACKETS 1334 BYTES 118927 (116.1 KIB)
    RX ERRORS 0 DROPPED 0 OVERRUNS 0 FRAME 0
    … … …
    (2) ifconfig | tr -s " "
    删除ifconfig中重复出现的空格
    在这里插入图片描述
    (3) cat /etc/passwd | tr -d “:”
    删除/etc/passwd 输出信息的:符号
    在这里插入图片描述
    2.col 过滤控制字符
    参数:
    -x 将tab键转换成对等的空格键
    -b 在文字内有反斜杠(/)时,仅保留反斜杠最后接的那个字符
    (1) cat -A /etc/man_db.conf     //会看到许多^I 的符号,那就是tab键
    cat /etc/man_db.conf | col -x | cat -A     //会将tab键转换成空格

3.join 处理两个文件之间的数据
参数:
-t join默认以空格符来分隔数据,并且对比“第一个字段的数据”;如果两个文件相同,则将两条数据连成一行,且第一个字段放在第一个。
-i 忽略大小写的差异
-1 代表第一个文件要用那个字段来分析
-2 代表第二个文件要用那个字段来分析
(1) head -n 3 /etc/passwd /etc/shadow
join -t “:” /etc/passwd /etc/shadow
在这里插入图片描述
通过上面操作我们可以看到将两个文件的第一字段(用:分隔的)相同着整合成一行
(2)我们知道/etc/passwd 的第四字段是GID 而/etc/group第三字段是如何整合两个文件。
head -n 3 /etc/passwd /etc/group
join -t “:” -1 4 /etc/passwd -2 3 /etc/group
可以看到相同字段被移到最前面了,而后将两个文件整合到了一起
在这里插入图片描述
4.paste 相对于join来言,paste直接将两行粘在一起,且中间默认以[tab]隔开
参数:
-d 后面可接分隔字符,默认以[tab]隔开
(1)将/etc/passwd 与 /etc/shadow同一行黏贴在一起
paste /etc/passwd /etc/shadow
在这里插入图片描述
5.expand 就是将[tab]按键转换成空格键
参数:
-t 后面可以接数字
(1) grep “^MANPATH” /etc/man_db.conf | head -n 3 | cat -A
grep “^MANPATH” /etc/man_db.conf | head -n 3 | expand -t 6 - | cat -A
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值