--主文档响应时间
awk -F , '{ if($7~/^(http\:\/\/7se.8o2.tx34.cc).+jsp$/) {sub(/ms/,"",$6); SUM+=$6;cnt++;} } END {print SUM/cnt }' stat_browsercloud_page_digest.log.2017-09-12
--所有资源平均响应时间
awk -F , '{ if($7~/^(http\:\/\/wgtj.gaotongpay.com).+$/) {sub(/ms/,"",$6); SUM+=$6;cnt++;} } END {print SUM/cnt }' stat_browsercloud_page_digest.log.2017-09-11
--主文档响应时间
awk -F , '{ if($7~/^(http\:\/\/www.76588.com).+htm$/) {sub(/ms/,"",$6); if($6>2) SUM+=$6;cnt++;} } END {print SUM/cnt }' stat_browsercloud_page_digest.log.2017-09-12
--所有资源平均响应时间
awk -F , '{ if($7~/^(http\:\/\/wap.jjwxc.com\/book2).+$/) {sub(/ms/,"",$6); SUM+=$6;cnt++;} } END {print SUM/cnt }' stat_browsercloud_page_digest.log.2017-09-11
--排序
awk -F / '{print $3}' abc.txt |sort -r|uniq -c|awk '{print $1"\t",$2}'
字符串判空
if [ -z "${APP_IDC}" ]; then
echo "var[APP_IDC] is null, exit..."
exit 1
fi
文件是否存在判断
if [ ! -f ${tools_dir}/setenv.sh ];then
echo "no setenv.sh, exit..."
exit 1
fi
目录是否存在
if [ ! -d ${logs_dir} ];then
mkdir -p ${logs_dir}
fi
定位目录
cur_dir=$(pwd)
file_path=$(echo "${cur_dir}/$0"|sed 's#\.\/##g')
tools_dir=$(dirname ${file_path})
参数含义:
1、$0获取到的是脚本路径以及脚本名,
后面按顺序获取参数,当参数超过10个时(包括10个),需要使用${10},${11}....才能获取到参数
2、shell中的case,when的语法
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 2
esac
exit $?
3、$?最后运行的命令的结束代码(返回值)
$# 是传给脚本的参数个数
$0 是脚本本身的名字
$1是传递给该shell脚本的第一个参数
$2是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$?最后运行的命令的结束代码(返回值)