Shell 字符截取命令 awk

  1. awk命令
    # awk '条件1{动作1} 条件2{动作2}….' 文件名
    一般使用关系表达式作为条件
    动作:1、格式化输出 2、流程控制语句

  2. 处理cut命令无法截取空格的列

    例子:截取出磁盘使用率

    df -h | grep "sda1" | awk 'BEGIN{print "this is sda1 hard use persent:"} {print $5}' | cut -f 1 -d "%"

  3. BEGIN关键字

    a、在所有动作处理之前执行,可在输出文本首行添加脚本注释(如上例)

    b、自定义截取字符,使用FS,必须添加BEGIN,删除首行

  4. FN内置变量

    自定义截取字符

    awk '{FS=":"}{print $1 "\t" $3}' /etc/passwd

    需要修改为

    awk 'BEGIN{FS=":"}{print $1 "\t" $3}' /etc/passwd

  5. END关键字

    命令执行完毕,在输出文本末尾添加END注释

    awk 'END{print "This is End Test!!"}{FS=":"}{print $1 "\t" $3}' /etc/passwd

  6. 关系运算符

    显示磁盘占有率超过5%的磁盘

    df -h | awk '$5>5{print $1 "\t" $5}' | cut -f 1 -d "%"

  7.  

    更新版本号
    echo "v0.5" > ver && cat ver && awk 'BEGIN{print "v" "'$(awk -F "v" '{print $2}' ver)'" - "0.1"}' > ver && cat ver
     

posted @ 2015-06-11 22:38  Mr黄瑞  阅读(966)  评论(0编辑  收藏  举报