字符处理命令

一.管道命令:将上一个命令的输出作为下一个命令的输入

1.”|“:仅能处理上一个命令传来的正确信息,即standard output的信息,对于standard error并没有直接处理的能力;

2.在管道符后接的第一个数据必定是命令,而且必须支持能够接收standard output的数据;


二.cut:将同一行的数据进行分解,获取数据

1.使用:cut -d '分隔符' -f fields

2.常见参数

1)-d:后跟分隔符,与-f一起使用;

2)-f:后跟数字,根据分隔符分割之后,取出第几段;

3)-c:以字符为单位取出固定字符区间,需要处理的数据需要一定格式;


三.grep

1.使用:grep [-acinv....] [--color=auto] 'string' file_name

2.具体使用(grep);


四.sort:排序

1.使用:sort [-fbMnrtuk] file_name

2.常见参数:

1)-f:忽略大小写;

2)-b:忽略最前面的空格;

3)-M:以月份名字来排序;

4)-n:使用数字进行排序;

5)-r:反向排序;

6)-u:即uniq,相同数据仅出现一行代表;

7)-t:分隔符,默认为tab键;

8)-k:以哪个区间来进行排序;


五.uniq:排序完成后将重复的数据仅列出一个来显示

1.使用:uniq [-ic]

2.常用参数:

1)-i:忽略大小写;

2)-c:计数;


六.wc

1.使用:wc  [-lwm]

2.常见参数:

1)-l:行数;

2)-w:字数;

3)-m:字符数;

七.tee:双重重定向

1.使用:tee [-a] file;

2.-a:以累加方式,将数据加入file中;


八.tr:可以删除一段信息当中的文字,或者进行文字信息的替换

1.使用:tr [-ds] strings

2.常见参数

1)-d:删除信息中strings这个字符串;

2)-s:替换掉重复的字符;

3.例如:

1)

[root@localhost]# head -n 5 /etc/passwd | tr -d ':'

rootx00root/root/bin/bash

binx11bin/bin/sbin/nologin

daemonx22daemon/sbin/sbin/nologin

admx34adm/var/adm/sbin/nologin

lpx47lp/var/spool/lpd/sbin/nologin

You have mail in /var/spool/mail/root

[root@localhost]# 

2)

[root@localhost]# echo "abce" | tr '[a-z]' '[A-Z]'

ABCE


九.col:经常被用为将man page转存为纯文本文件以方便查阅

1.使用:col [-xb];

2.常见参数:

1)-x:将tab键转换成对等的空格;

2)-b:在文字内有斜杠(/)时,仅保留它最后接的那个字符;


十.join:处理两个文件之间的数据

1.使用:join [-ti12] file1 file2

2.常见参数:

1)-t:分隔符,默认为空格;

2)-i:忽略大小写;

3)-1:第一个文件以哪个字段分析;

4)-2:第二个文件以哪个字段分析;

3.例子:

[root@localhost]# join -t ':' -1 4 /etc/passwd -2 3 /etc/group | head -n 3join: 

文件1 没有被正确排序

join: 文件2 没有被正确排序

0:root:x:0:root:/root:/bin/bash:root:x:root

1:bin:x:1:bin:/bin:/sbin/nologin:bin:x:root,bin,daemon

2:daemon:x:2:daemon:/sbin:/sbin/nologin:daemon:x:root,bin,daemon

这里可以看出,用join处理的文件要先经过排序


十一.paste:直接连接两行,中间以tab键隔开

1.使用:paste [-d] file1 file2

2.-d:分隔符

3.例子:

[root@localhost]# paste /etc/passwd /etc/group | head -n 3

root:x:0:0:root:/root:/bin/bashroot:x:0:root

bin:x:1:1:bin:/bin:/sbin/nologinbin:x:1:root,bin,daemon

daemon:x:2:2:daemon:/sbin:/sbin/nologindaemon:x:2:root,bin,daemon


十二.expand:将tab键转化成空格(unexpand:将空格替换成tab)

1.使用:expand [-t] file

2.-t:后跟数字,表示将tab键替换成几个空格;

3.例子:

[root@localhost]# tail -n 1 test.txt 

a b

[root@localhost]# tail -n 1 test.txt | expand -t 1| cat -A

a b$


十三.split:根据文件大小或行数来切割文件

1.使用:split [-bl] file

2.常见参数:

1)-b:后跟切割文件的大小,可加单位b,k,m等;

2)-l:后跟行数,根据行数切割;


十四.xargs:产生某个命令的参数

1.使用:xargs [-0epn] command

2.常用参数:

1)-0(数字0):如果输入的stdin含有特殊字符,这个参数可以将它还原成一般字符;

2)-e:EOF,后跟字符串,当xargs分析到这个字符串时,停止;

3)-p:与用户交互;

4)-n:后跟次数,每次command命令执行时,要使用几个参数的意思。






  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值