一个统计的命令,引出grepawksortuniq。结果为

77351    191.16.43.167

76989    191.16.43.165

77173   191.16.43.163

   1248   192.168.50.18

       60   191.16.43.17

这条统计命令为

统计耗时大于2s的请求,使用awk的if语句。

2.482 /app/test

1 grep

1、grep命令使用

查询catiout.out文件中每一行不包含xxx的内容。

2、正则表达式

注意:要使用单引号,不要使用双引号,双引号表示字符串

3、–corlor

高亮查询结果

4. -A和-B

-A 表示向后展示多少行

-B 表示向前展示多少行

5. -a

出现”Binary file matches  **.log”,可以通过”-a”参数,命令如下:

6、 或

(1)通过“\|”来表示,必须要加上”\”。如下表示搜索包含 xx或者yy的行。

(2)通过 -e表示

如下

7、与

通过”.*” 来实现,如下表示即包含xx且又包含yy的行

8、 -i

用于不区分大小写

9、查看tar文件

使用zgrep和–binary-files=text来实现,如下

2 awk

1.  命令范式

(1)如果不使用-F,说明默认分隔符为空格。

(2)都是单引号

2. awk目的

awk是以文件的一行为处理单位,awk每接收文件的一行,就根据分割符,分解成多个域,对每一个域根据command进行处理

3. 使用变量

举例

3 uniq

1. -c 可以输出重复行的重复次数

2. uniq  执行前要执行sort命令,这是因为uniq比较的是前后两行。

4 sort排序

1.  -n    按照数字进行排序。如果不指定-n,会按照字符进行排序

如果想要按照数值排序而不是字符排序时,需要-n。(如111和2,按照字符排序111在前,按照数字排序2在前)。

默认的情况下排序都是按照第一个域进行排序的。可以通过-t和-k来进行指定哪个域进行排序。

2. -t和-k    指定排序的域

如果想要按照指定的一个域进行排序,则使用-t<分割符>和-k<域个数>来进行排序

3 -r     排序为逆序方式。如果不指定-r,排序为顺序方式

5 sed

sed在统计ip中没有用到,但是作为常用命令这里也一起总结了。

1.  和awk比较

(1)sed  处理单位是一行

(2)awk 处理的单位是一个行分解的域

2. 参数

(1)-e 是为了在一行使用多个命令,如

结果是删除1行和5行,然后将te替换成check

(2)-n

一般都是和显示(命令p)一起使用。如,显示第一行

此命令就会只显示第一行信息,如果没有"-n"就会显示所有行

3. a 新增一行

(1)在一行后面添加

(2)在多行后面添加

4. c 替换一行的内容为指定行的内容

(1)替换一行的内容

(2)替换多行的内容

5. d 删除行

(1)包含某些词的行

(2)删除指定的行

6. p打印行

和-n结合使用打印出某些行

(1)打印一行

(2)打印一个区间

(3)打印到最后一行

7. s 替换行中某些关键词

8、查看匹配内容所在行号

6 cut 

主要有两种方式 -c-f,分表表示按照字符和field模式。

1 -c

赎回结果为

hello

2-f

必须通过某一个字符来进行分割,通过-d来指定这个字符。如下

输出结果为

123

(全文完)

分类&标签