bash脚本中的跟踪错误

时间:2014-03-14 16:02:09

标签: bash shell cygwin

我在cygwin上运行bash脚本。脚本失败了,我很想知道脚本中某些环境变量的状态。有没有办法跟踪bash脚本的执行情况?

3 个答案:

答案 0 :(得分:4)

在脚本中,您可以设置详细,跟踪和回显的标志,以检查shell如何解释您的语句。

From bash beginner's guide

set -x # expand variables
set +x # turn it off
set -v # set verbose
set +v # turn it off

另请参阅:http://www.tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html

答案 1 :(得分:1)

您可以使用trap调用env在脚本退出之前转储环境。

有许多使用trap来确保在退出时删除临时文件的示例,您可以轻松修改这些文件。

答案 2 :(得分:1)

请在此处查看answer

sh -x script [arg1 ...]
bash -x script [arg1 ...]

这是关于HowTo: Debug a Shell Script Under Linux or UNIX的精彩帖子。我认为这会有所帮助。