我有大量需要修改的脚本。每个脚本可能调用5到10个其他脚本,这些脚本可能会调用其他几个脚本,谁知道兔子洞运行的有多深。
有任何方法可以获得特定脚本调用的脚本列表吗?
我在想:
/home/root/ $ showscripts mytargetscript输出将类似于:
/home/root/mytargetscript
/home/root/asubscript
/home/root/bsubscript
...如果我冒犯了Unix神,我会提前忏悔。我在dba.se上回答了很多问题。
发布于 2015-06-04 23:17:45
一种可能的方法(未经测试)是以下。
摘要:您有很多shell脚本,它们都相互调用。您想知道这些脚本之间的调用关系是什么。
让我们假设脚本都是作为单独的程序调用的,因为吉尔斯告诉我,在这种情况下,被调用的脚本是调用脚本的子进程。
然后在每个脚本中放入一些代码,将进程id、父进程id和脚本的名称等信息写入数据库。这段代码对所有脚本都是通用的。然后在运行脚本后对数据库信息进行后处理(S),确定脚本之间的调用关系。
https://unix.stackexchange.com/questions/207558
复制相似问题