【问题标题】:Bash verbose command with evaluating parameters带有评估参数的 Bash 详细命令
【发布时间】:2018-10-25 18:33:00
【问题描述】:

我正在尝试在 Bash 中记录命令及其参数(在必要时进行评估后)。

我正在尝试使用set -v:

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

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

我原来的命令比较复杂,所以不想echo每个参数一个一个。 (而且这样做可能更容易出错)。

【问题讨论】:

  • 您在寻找set -x吗?
  • 天哪,是的,谢谢。 :-)
  • 如果不是深夜,我会写一个正确的答案... :-/
  • 只写和答案一样的东西。和晚安。 :-)

标签: bash logging verbose


【解决方案1】:

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

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

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

【讨论】:

  • 我猜help set 应该是我的朋友。
猜你喜欢
  • 1970-01-01
  • 2022-08-18
  • 1970-01-01
  • 2023-01-15
  • 1970-01-01
  • 1970-01-01
  • 2018-07-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多