wc -l /etc/passwd(统计行数)bash
wc -w /etc/passwd(统计单词个数)编码
wc -c /etc/passwd(统计字符个数)spa
wc -lwc /etc/passwd(统计文件中行数、单词个数、字符个数)code
cat /etc/passwd |cut -d ':' -f 1,7(行分割符为:,取1和7字段)
blog
cat /etc/passwd|cut -d ':' -f 1-3(取1-3字段)
排序
cat /etc/passwd|cut -d ':' -f 1-(取1到最后一个字段)ip
-i:忽略大小写资源
-c:统计相同的行数字符串
-u:显示独一无二的行io
-d:显示有重复的行
-dc:统计并显示有重复的行
-uc:统计并显示没有重复的行
testfile: hello world friend hello world hello lky sort testfile |uniq -dc(对文件进行排序,而后显示并统计有重复的行) sort testfile |uniq -uc(对文件先排序,而后显示没有重复的行) sort testfile |uniq (对文件先排序,而后去重)
选项与参数: -f :忽略大小写的差别,例如 A 与 a 视为编码相同; -b :忽略最前面的空格符部分; -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法; -n :使用『纯数字』进行排序(默认是以文字型态来排序的); -r :反向排序; -u :就是 uniq ,相同的数据中,仅出现一行表明; -t :分隔符,默认是用 [tab] 键来分隔; -k :以那个区间 (field) 来进行排序的意思
cat /etc/passwd |sort(默认以第一个数据进行排序)
cat /etc/passwd |sort -t ':' -k 3(分割符为:,以第三个字段进行排序)
cat /etc/passwd |sort -t ':' -k 3n(分割符为:,以第三个字段进行排序并按数字进行排序,默认是按照字符串进行排序)
cat /etc/passwd |sort -t ':' -k 3nr(分割符为:,以第三个字段进行排序并按数字进行排序并降序排序,默认是按照字符串进行排序,默认是按照升序进行排序)
对/etc/passwd,先以第六个域的第2个字符到第4个字符进行正向排序,再基于第一个域进行反向排序。
cat /etc/passwd |sort -t ':' -k 6.2,6.4 -k 1r
对/etc/passwd按照第七个域进行排序,而后去重
cat /etc/passwd |sort -t ':' -k 7 -u
awk -F ' ' 'pattern+action' filename awk -F ':' '/root/{print $0}' /etc/passwd -------------------------------------------------------------------------------- last -n 5 | awk 'BEGIN{print "name,ip"} {if(NF>=9)print $1","$3} END{print "END";}' -------------------------------------------------------------------------------- 统计某个目录下资源大小 ls -al | awk 'BEGIN{size=0;} {if(NF>=5){size=size+$5;};print "current size is : ",size;} END{print "END"}' -------------------------------------------------------------------------------- 输出/etc/passwd中全部用户 awk -F ':' 'BEGIN{count=0;} /^root/{name[count]=$1;count++;}END{for(i=0;i<count;++i){printf("the %s user is %s\n",i,name[i])}}' /etc/passwd --------------------------------------------------------------------------------