zoukankan      html  css  js  c++  java
  • linux中常见的命令

    • wc

         wc -l /etc/passwd(统计行数)

         wc -w /etc/passwd(统计单词个数)

         wc  -c /etc/passwd(统计字符个数)

         wc -lwc  /etc/passwd(统计文件中行数、单词个数、字符个数)


    •  cut命令可以从一个文本文件或者文本流中提取文本列。

        cat /etc/passwd |cut -d ':' -f 1,7(行分割符为:,取1和7字段)

        cat /etc/passwd|cut -d ':' -f 1-3(取1-3字段)

        cat /etc/passwd|cut -d ':' -f 1-(取1到最后一个字段)


    •  uniq

        -i:忽略大小写

        -c:统计相同的行数

        -u:显示独一无二的行

        -d:显示有重复的行

        -dc:统计并显示有重复的行

        -uc:统计并显示没有重复的行

         

    testfile:
    hello
    world
    friend
    hello
    world
    hello
    lky
    
    sort testfile |uniq -dc(对文件进行排序,然后显示并统计有重复的行)
    sort testfile |uniq -uc(对文件先排序,然后显示没有重复的行)
    sort testfile |uniq (对文件先排序,然后去重)

    •  sort
    选项与参数:
    -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
    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
    ",i,name[i])}}' /etc/passwd
    --------------------------------------------------------------------------------
     
  • 相关阅读:
    Ruby学习笔记5: 动态web app的建立 (2)
    Ruby学习笔记4: 动态web app的建立
    Ruby学习笔记3:Rendering(渲染)和 Redirect(重定向)
    对互联网垂直社交产品的分析
    测试 | 代码覆盖测试工具 | Eclemma
    Jquery | 基础 | 事件的链式写法
    Jquery | 基础 | html()
    Serervlet | 慕课课程实战 | 编写登录逻辑
    Jquery | 外部插入节点
    Jquery | 基础 | .hover()
  • 原文地址:https://www.cnblogs.com/dmir/p/6476812.html
Copyright © 2011-2022 走看看