我想知道脚本启动哪些可执行文件以及以什么顺序(并递归地跟踪这些可执行文件)。
例如,假设我这里有一个 bash 脚本(称为 abc.sh):
#!/bin/bash
ls
gcc
我想使用“trace/log 命令”运行此脚本并得到如下内容:
abc.sh -- ls
|-- gcc -- cpp
-- cc1
... etc.
这表明abc.sh调用了ls和gcc。 gcc 又称为 cpp 和 cc1。
这可能吗?我该怎么做?像上面这样的树视图会很好,但是更简单的视图也可以。
请注意,我不需要进程树的当前快照。相反,我想要生成过程的跟踪或日志。计时注释也很有用。
Thanks!
您可以尝试分析以下输出strace
命令。
特别是,您会对类似的东西感兴趣
strace -f -tt -e trace=execve ./abc.sh
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)