shell脚本怎么显示所执行的每一条命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本怎么显示所执行的每一条命令相关的知识,希望对你有一定的参考价值。
可以写个函数,比如:function exec_cmd
echo "Executing cmd $@"
$@
exec_cmd your_cmd
这样每次执行命令之前都会先显示执行的命令,再执行。 参考技术A 在脚本中加上set -x或者set -xv都可以
也可以在命令行这样执行:
sh -x yourscript.sh
Shell脚本的调试方法
Shell脚本的调试方法
Shell提供了一些用于调试脚本的选项,如下所示:
-n
读一遍脚本中的命令但不执行,用于检查脚本中的语法错误
-v
一边执行脚本,一边将执行过的脚本命令打印到标准错误输出
-x
提供跟踪执行信息,将执行的每一条命令和结果依次打印出来
使用这些选项有三种方法,一是在命令行提供参数
$ sh -x ./script.sh
二是在脚本开头提供参数
#! /bin/sh -x
第三种方法是在脚本中用set命令启用或禁用参数
#! /bin/sh if [ -z "$1" ]; then set -x echo "ERROR: Insufficient Args." exit 1 set +x fi
set -x和set +x分别表示启用和禁用-x参数,这样可以只对脚本中的某一段进行跟踪调试。
以上是关于shell脚本怎么显示所执行的每一条命令的主要内容,如果未能解决你的问题,请参考以下文章
如何将一shell脚本中的每一步命令执行结果输出到指定日志文件中