gpt4 book ai didi

linux - 检测 '/proc' 文件系统的正确方法?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:37:16 34 4
gpt4 key购买 nike

我正在编写一个跨平台的 bash 脚本。它需要使用此命令#1:

cat /proc/$PID/cmdline

如果 procfs 不可用(例如在 OS X 上),它需要回退到此命令 #2:

ps -eo "pid command" | grep "^$PID"

我的问题很简单:检测“/proc”文件系统是否存在的正确方法是什么?

最佳答案

“proc 文件系统”几乎总是挂载在 /proc 中(如果存在),但不一定总是如此(至少理论上如此)。可能更可移植的方法是使用 mount -t proc 列出 proc 类型的已安装文件系统并从那里提取路径。如果该命令未返回任何路径,则 procfs 未安装,您可以回退到备用命令。

类似的东西:

PROC_PATH=$(mount -t proc | egrep -o '/[^ ]+')
if [ "$PROC_PATH" ]; then
# use procfs
else
# use alternative
fi

另一方面,ps 应该更便携并且始终有效,所以也许最好的解决方案就是始终使用 ps

关于linux - 检测 '/proc' 文件系统的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25959265/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com