一、字符截取命令—cut
cut 选项 文件名
-f 列号 提取第几列
-d “分隔符” 截取到分隔符为止
注意:cut默认是以TAB来分隔多个列的,而awk默认的列分隔符为一个或多个空格或TAB,相对cut比较方便但有局限性
cut提取整列,grep提取整行,一般同时使用,例如提取所有普通用户的用户名:
[root@localhost /]# cat /etc/passwd | grep /bin/bash | grep -v root | cut -d ":" -f 1
user1
user2
user3
说明:所有用户都位于/bin/bash下,-v排除root,截取到:为止
二、符截取命令—awk命令
截取指定的列
[root@localhost /]# awk '{print $2 "\t" $4}' cut.txt
name age
liming 18
xiaohua 20
利用BEGIN强制截取第一条数据,利用FS设定分隔符
[root@localhost /]# awk 'BEGIN{FS=":"}{print $1 "\t" $3}' /etc/passwd
root 0
bin 1
daemon 2
三、字符处理命令
1. 排序命令sort
sort 选项 文件名
-f 忽略大小写 -r 反向排序 -t 指定分隔符
-n 以数值排序 -k n[,m] 按照指定字段范围排序
[root@localhost /]# sort -n -t ":" -k 3,3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
2. 统计命令wc
wc 选项 文件名
-lwm 只统计行数、单词数、字符数,也可以统计指令结果
[root@localhost /]# df -h | wc -l
7