zoukankan      html  css  js  c++  java
  • shell编程系列20--文本处理三剑客之awk常用选项

    shell编程系列20--文本处理三剑客之awk常用选项
    
    
    awk选项总结
    
    选项        解释
    -v        参数传递
    -f        指定脚本文件
    -F        指定分隔符
    -V        查看awk的版本号
    
    [root@localhost shell]# awk -v num2="$num1" -v var1="$var" 'BEGIN{print num2,var1}'
    20 hello world
    
    
    # -f 选项 文件中读取表达式
    [root@localhost shell]# cat 1.awk 
    BEGIN{
        str="I hava a tream"
        location=index(str,"ea")
        print location
    }
    [root@localhost shell]# awk -f 1.awk 
    12
    
    [root@localhost shell]# awk -f 2.awk 
    Transaction $ Start,Event ID:9002
    [root@localhost shell]# cat 2.awk 
    BEGIN{
        str="Transaction 243 Start,Event ID:9002"
        count=sub(/[0-9]+/,"$",str)
        print str
    }
    
    # -F 指定分隔符
    [root@localhost shell]# awk -F ":" '{print $7}' passwd 
    /bin/bash
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /bin/sync
    /sbin/shutdown
    /sbin/halt
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /sbin/nologin
    /bin/bash
    /sbin/nologin
    /bin/bash
    /sbin/nologin
    
    # 显示版本号
    [root@localhost shell]# awk -V
    GNU Awk 4.0.2
    Copyright (C) 1989, 1991-2012 Free Software Foundation.
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with this program. If not, see http://www.gnu.org/licenses/.
  • 相关阅读:
    MQTT的编译和安装(mosquitto)
    四、固件分析-固件逆向
    三、固件分析-固件提取
    二、硬件分析-电路分析
    一、硬件分析
    gdb调试
    AES加密中遇到的坑
    多线程中快速定位段错误位置
    理想的数据加密流程
    Centos进入单用户修改root密码
  • 原文地址:https://www.cnblogs.com/reblue520/p/11016891.html
Copyright © 2011-2022 走看看