轻松学会shell常用参数

Posted Friends of the wind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了轻松学会shell常用参数相关的知识,希望对你有一定的参考价值。

基础

1、-xv 调试 bash 脚本

1)创建测试文件
touch /var/log/env
不加试试:

-x:

-v:显示详情

2、两个整数相加

#!/bin/bash
A=1
B=2
expr $A + $B#!/bin/bash
A=1
B=2

awk 'BEGINprint '"$A"' + '"$B"''#!/bin/bash
A=1
B=2

echo $A+$B | bc

进阶

3、如何打印传递给脚本的参数


执行:

4、定义属组及调用数组

#!/bin/bash
Number=("name" "zhaosi" "man")

echo $Number[2]


5、每种类型日志的个数

Apache
2020-02-03 11:03:23 WARN My warning message repeated 3 times
2020-02-03 11:03:23 ERR oops, error message repeated 8 times
2020-02-03 11:03:26 ERR this is my error message repeated 1 times
2020-02-03 11:03:26 WARN MY warning , so scary, repeated 1 times
2020-02-03 11:03:26 WARN cpu utilization high, repeated 1 times
2020-02-03 11:03:29 INFO this is for test repeated 2 times

思路:
先过滤出需要的参数,然后相加

#!/bin/bash
#defined variable
W=`grep "WARN" apache.log |cut -d ' ' -f 3 | uniq -c |awk 'print $1'`
E=`grep "ERR" apache.log |cut -d ' ' -f 3 | uniq -c |awk 'print $1'`
I=`grep "INFO" apache.log |cut -d ' ' -f 3 | uniq -c |awk 'print $1'`

#The results are displayed on the screen.
echo "WARN:$W"
echo "ERR:$E"
echo "INFO:$I"

求过滤结果的合

#!/bin/bash
W=`awk '/WARN/print $(NF-1)' apache.log |awk 'sum+=$1 END print sum'`
E=`awk '/ERR/print $(NF-1)' apache.log |awk 'sum+=$1 END print sum'`
I=`awk '/INFO/print $(NF-1)' apache.log |awk 'sum+=$1 END print sum'`

echo "WARN:$W"
echo "ERR:$E"
echo "INFO:$I"


以上是关于轻松学会shell常用参数的主要内容,如果未能解决你的问题,请参考以下文章

css常用代码片段 (更新中)

IOS开发-OC学习-常用功能代码片段整理

数据可视化之powerBI基础(十九)学会使用Power BI的参数,轻松搞定动态分析

轻松保存重复多用的代码片段

JS常用代码片段-127个常用罗列-值得收藏

3小时学会C语言横向对比/纵向剖析,轻松学习C语言