• 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/.
  • 相关阅读:
    spring学习记录_Spring中的新注解
    spring学习记录_spring的 注解
    spring学习记录_spring的 ioc核心容器
    关于myeclipse项目运行报错:Access denied for user 'root'@'localhost' (using password: YES)
    vue项目中实现多语言切换
    OC中限制UITextView的最大字数的实现
    简单瀑布流的实现
    仿购物车的实现
    仿QQ好友列表界面的实现
    类似QQ侧滑菜单功能实现
  • 原文地址:https://www.cnblogs.com/reblue520/p/11016891.html
Copyright © 2020-2023  润新知