带有评估参数的 Bash 详细命令



我正在尝试在 Bash 中记录命令及其参数(如有必要,评估后(。

我正在尝试使用set -v

$ variable=2
$ set -v
$ sleep $variable
sleep $variable

如您所见,它打印sleep $variable.我想登录sleep 2

我的原始命令更复杂,所以我不想逐个echo每个参数。(这样做可能更容易出错(。

set -v(或set -o verbose(将在读取时输出每个命令,而不会扩展内容。

set -x(或set -o xtrace(将在执行前输出展开的命令行。 每行前面都有PS4提示符(通常是+(,对于作为命令替换的一部分执行的命令,提示符将被"加倍"(++(。

跟踪将写入$BASH_XTRACEFD指示的文件描述符(或默认写入 shell 的标准错误(。

最新更新