【发布时间】:2021-03-03 04:46:50
【问题描述】:
什么是 linux 或 posix C 函数来查找可执行文件的方式与 Bash 在您键入可执行文件时查找可执行文件的方式相同?我认为which bash 命令做同样的事情至少非常相似。因此,如果我给函数参数"ls" 它返回“/bin/ls”,例如即时查看$PATH。
【问题讨论】:
-
你知道
which是用C写的吗?你知道它有开源实现吗?你检查过它们吗? -
没有 posix C 函数可以在目录列表中查找可执行文件:您必须自己编写。也许您可以使用 POSIX
popen()调用which? -
那么你应该遍历PATH中的所有目录直到你找到它,应该很容易实现。
-
which不是 bash 命令,顺便说一句,它是一个独立的可执行文件...