我能找到哪个脚本输出哪个错误吗?

ibr*_*him 2 scripting linux bash

有一个脚本调用其他脚本,它们调用其他脚本...我不知道究竟调用了哪些脚本以及调用了多少个脚本。我只知道其中一些正在添加 iptables 规则,当我调用根脚本时出现此错误。

iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
Run Code Online (Sandbox Code Playgroud)

我的问题是我找不到哪个脚本输出这个错误。有什么方法或工具可以学习吗?

use*_*517 6

您可以使用以下命令跟踪一系列脚本的执行情况 bash -x

bash -x /path/to/your/script
Run Code Online (Sandbox Code Playgroud)

从中您可以找出正在调用哪些脚本。您可以使用-e开关 强制脚本提前中止

bash -e -x /path/to/your/script
Run Code Online (Sandbox Code Playgroud)

这可能会让您不必费力地处理大量输出