|
|
1
12
Bash绝对可以做递归。
您可以从stat文件中检索第四个字段,而无需使用外部
如果命令名中可能有空格,则可以从数组末尾开始计数(假设 number of fields 是稳定的)。如果命令名中没有空格,也可以这样做。
下面是另一种可以避免这些问题的技术(但如果命令名包含换行符,则可能会失败):
该文件中的第五个字段如下所示:
大括号展开将所有内容剥离到tab字符,只留下数字部分。 |
|
|
2
10
如果没有更好的解决方案,下面是一个简单的(递归)脚本,用于获取给定的任何进程号的顶级父PID(如果忽略PID参数,则获取当前shell):
感谢@Dennis Williamson对如何简洁高效地编写这个脚本提出了许多建议。 |
|
|
3
5
另一个解决方案(来自 here
|
|
|
4
1
迭代版本:
作为两个独立的函数,因为有时只需要父PID,有时需要整个树。 |
|
|
5
1
|
|
|
6
0
OS X版本 ,改编自@albert和@yukondude的答案:
|
|
|
CalculusLover · 在本例中,fork()是如何工作的? 4 年前 |
|
|
jjmerelo · 使用Proc::Async从绑定管道读取 8 年前 |
|
|
jatinBatra · 编译后生成的二进制文件会发生什么情况[关闭] 8 年前 |
|
|
Jacobo · 从Java调用具有输入和输出重定向的C可执行文件 8 年前 |
|
|
Ran · 每当我尝试执行命令行提示符时,Unity就会阻塞 8 年前 |
|
|
Hatshepsut · 使用命令行参数使用region调用子流程 8 年前 |