给定一个构建并执行某些命令的shell脚本(在我的情况下调用ImageMagick的cli),有没有办法列出在该脚本中执行的命令?由于该脚本多次用参数convert
代替参数,我想得到如下列表。在shell脚本中执行的跟踪shell命令(例如zsh)
convert ...
convert ...
convert ...
...
我使用的zsh在OS X,但可以切换到庆典等
给定一个构建并执行某些命令的shell脚本(在我的情况下调用ImageMagick的cli),有没有办法列出在该脚本中执行的命令?由于该脚本多次用参数convert
代替参数,我想得到如下列表。在shell脚本中执行的跟踪shell命令(例如zsh)
convert ...
convert ...
convert ...
...
我使用的zsh在OS X,但可以切换到庆典等
贴
set -x
在脚本的顶部。在bash中工作,应该在zsh中工作。
在zsh
(也许只能与oh-my-zsh
启用)我发现有很多噪音产生与set -x
或setopt xtrace
。
但你还可以:
typeset -ft <function_name>
跟踪只有一个功能。
要关闭它:
typeset +ft <function_name>
如果我的脚本执行其他脚本,有没有办法让这个`set -x`影响所有的嵌套上下文呢?也许是一个全局shell变量? – 2011-02-15 04:16:44