转载请注明出处:
sh -x 命令的执行,会将shell 命令的每一个执行步骤进行打印,可以查看到 整个命令或脚本的执行过程的 debug。
sh -n 只读取shell脚本,检测语法错误,但不实际执行
使用上面两个命令可以帮助我们编写shell脚本,使用示例:
1. 从指定目录的所有jar包中寻找 包含 log4j 与 fastjson 的jar文件,使用 sh -x 查看执行的每个过程
find /opt/skywalking/ -name "*.jar"|grep -v "jvm"|awk '{print "jar -tvf " $1}'|sh -x|egrep "log4j-|fastjson-"
2. 使用 sh -x shell.sh 查看脚本执行的整个过程
脚本内容如下:
#!/bin/bash sum=0 for value in `cat console.log|grep 'filterStr'|awk '{print $2}'` do sum=$(($sum+$value)) done echo "总共耗时:"$sum totalCount=`cat console.log|grep 'filterStr'|awk '{print $2}'|wc -l` echo "总共请求时间为:"$totalCount #计算请求的平均时间 avageTime=$(($sum/$totalCount)) echo "平均请求响应时间为: "$avageTime
使用 sh -x test.sh 执行脚本如下:
标签: linux