bash - 检查当前 bash 的详细程度

标签 bash verbosity

我知道可以使用 set -v 将 bash 设置为详细模式,但是我想编写一个即使从详细脚本调用也不会在详细模式下运行的函数。

虽然我知道我可以通过在函数开头使用 set +v 来禁用详细信息,并以 set -v 结束它,这意味着我的函数会将调用它的任何脚本设置为详细,即使在调用它之前它并不详细。

理想情况下,我会在函数开始时检查详细程度,禁用详细程度,并在函数结束时恢复详细程度更改。

有没有办法找到当前的详细程度?

最佳答案

if [[ $- =~ v ]]; then 
  echo "verbose enabled"
else
  echo "verbose disabled"
fi

$-: Contains the current set of enabled options. See: help set

关于bash - 检查当前 bash 的详细程度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50665573/

相关文章:

c++ - Makefile:在全局变量初始化之前通过 'make all' 命令运行 bash 脚本

python - 这个实体定义模型是否太冗长了?

maven-2 - Maven : How can I stop the deploy plugin from logging upload progress?

specman - 在 Specman e 中,有没有办法为消息提供非最终消息标签?

c# - 即使更冗长,在 foreach 之外定义变量是否更好的编码实践?

ruby - 尽管有 .gemrc,gems 的安装并不冗长

linux - Linux上的bash,删除具有特定文件扩展名的文件

regex - 使用 bash 在 Ubuntu 或 Debian 上获取 IP 地址信息(网关和子网)

python - 如何从 Bash 中的返回代码中提取位

linux - 将进程运行所用的秒数保存在变量中