shell-awk常见用法

awk也是一种数据处理工具,是一种最基本的语言,可以自定义变量,循环数组正则函数等
awk -f分隔符  ‘commands命令‘ 文件
 ‘条件{执行}条件{执行}‘多个条件可以使用各种操作符号
<><==> == !=   ~匹配  !~不匹配
例如


条件也可以使用&& ||  都可以 

awk begin区是在执行条件之前提前输出的区域    end是在最后做的输出,中间可以插入普通条件,跟操作

awk ‘中间可以用各种正则等等‘

函数是经常在自动化脚本中使用的一种技术,需要自行写.一个简单的脚本
这个脚本最基本的就是取消文件中的空行,其中sed我做的是屏幕输出如果想要直接删除只需要加-i

编辑脚本任重而道远~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  • -eq   等于
  • -ne    不等于
  • -gt    大于
  • -lt    小于
  • -le    小于等于
  • -ge   大于等于
  • -z    空串
  • =     两个字符相等
  • !=    两个字符不等
  • -n    非空串

总结:

文档比较运算符  
-e filename  假如 filename存在,则为真  [ -e /var/log/syslog ] 
-d filename  假如 filename为目录,则为真  [ -d /tmp/mydir ] 
-f filename  假如 filename为常规文档,则为真  [ -f /usr/bin/grep ] 
-L filename  假如 filename为符号链接,则为真  [ -L /usr/bin/grep ] 
-r filename  假如 filename可读,则为真  [ -r /var/log/syslog ] 
-w filename  假如 filename可写,则为真  [ -w /var/mytmp.txt ] 
-x filename  假如 filename可执行,则为真  [ -L /usr/bin/grep ]

时间: 2024-11-13 01:31:07

shell-awk常见用法的相关文章

awk常见用法总结

split用法 echo "hello_xiao_lan" | awk '{split($0,b,"_");print b[3]}' //substr用法 awk '{a=substr($1,2);print a}' file2 //求均值 awk '{ sum = $1+sum ;count++ } END {print count, sum,sum/count}' aa.txt awk '{max=($2>max?$2:max)} END {print m

Shell – Grep 常见用法

是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 我经常用来查找字符串比如: grep -rn "字符串" . 递归查找当前目录下所有文件中 "字符串" 并且所在标出所在行. 下面来看看具体参数: grep [-acinv] [--color=auto] '搜寻字符串' filename 选项参数: -a :将 binary 档案以 text 档案方式搜寻数据 -c :计算找刡 '搜寻字符串' 次数 -i :忽略大小写 -n :输出行号

linux shell awk 语法

引用:http://blog.csdn.net/weekly123/article/details/1465675 inux shell awk 语法   Awk 是一种非常好的语言,同时有一个非常奇怪的名称.在本系列(共三篇文章)的第一篇文章中,Daniel Robbins 将使您迅速掌握 awk 编程技巧.随着本系列的进展,将讨论更高级的主题,最后将演示一个真正的高级 awk 演示程序.捍卫 awk在本系列文章中,我将使您成为精通 awk 的编码人员.我承认,awk 并没有一个非常好听且又非

awk基本用法

RS,ORS,FS,OFS,NR,NF,$0,$n RS 输入的行分隔号 ORS 输出的行分隔号 FS 输入的列分隔号 OFS 输出的列分隔号 NR 行号 NF 尾列号 $0 表示所有列(整行) $n 表示第n列 例如: shell> cat aa 1 2 3 4 5 6 shell> awk 'BEGIN{ORS=",\n"}{print}' aa 1 2, 3 4, 5 6, RS反之 shell> awk 'BEGIN{ORS=",\n"}{

Linux sed 和 awk的用法

sed用法: 原文链接:http://www.cnblogs.com/dong008259/archive/2011/12/07/2279897.html sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为:         sed [-nefri] 'command' 输入文本 常用选项:        -n∶使用安静(silent)模式.在一般 sed 的用法中,所有来自

AWK详细用法

awk非常的优秀,运行效率高,而且代码简单,对格式化的文本处理能力超强.基本上grep和sed能干的活awk全部都能干,而且干得更好. 先来一个很爽的例子:文件a,统计文件a的第一列中是浮点数的行的浮点数的平均值.用awk来实现只需要一句话就可以搞定(当然,这个东东用python也可以很轻松的实现,只是无论如何都得新建一个文件:别妄想用bash shell来做,那可是浮点数!!!)$cat a1.021 331#.ll   442.53 6ss    7awk 'BEGIN{total = 0;

2.3.1.shell awk 入门

awk:好用的数据处理工具 awk 也是一个非常棒的数据处理工具!sed 常常用于一整个行的处理, awk 则比较倾向于一行当中分成数个『栏位』(或者称为一个域,也就是一列)来处理.因此,awk 相当的适合处理小型的数据数据处理呢!awk 通常运行的模式是这样的: [[email protected] ~]# awk '条件类型1{动作1} 条件类型2{动作2} ...' filename awk 后面接两个单引号并加上大括号 {} 来配置想要对数据进行的处理动作. awk 可以处理后续接的文件

awk数组用法

两个文件,从文件b首列查找出等于文件a的行并输出[[email protected] ~]# cat a1367[[email protected] ~]# cat b1 2 32 3 43 4 54 5 65 6 76 7 87 8 9 shell脚本[[email protected] ~]# cat jieguo #!/bin/bashy=`sed -n 'p' a |wc -l`  #a 行数x=`sed -n 'p' b |wc -l`  #b行数for((i=1;i<=$y;i++)

Linux中 find 常见用法示例

Linux中find常见用法示例 #find path -option [ -print ] [ -exec -ok command ] {} \; #-print 将查找到的文件输出到标准输出 #-exec command {} \; —–将查到的文件执行command操作,{} 和 \;之间有空格.其实在命令执行的时候"{}"将被find到的结果替换掉,因此将"{}"看成find到的文件来进行操作就很容易理解这个选项了. #-ok 和-exec相同,只不过在操作

【shell】Linux shell中括号的用法

Linux shell中括号的用法 概述 本文主要介绍Linux中括号的用法,主要包含判断文件和变量. **注意事项**:中括号两边必须有空格. 使用中括号会涉及到的知识 &&.|| 在本文对文件或者变量做判断的时候,可能会多次使用到&&和||这两个符号,所以在我们进入中括号的学习之前首先了解一下这两个符号的作用. &&:并 --> 两真才为真,如果有两个条件,第一个为真,那么肯定会判断第二个条件:如果第一个条件为假,那么第二个条件将不会判断.(第一个