为什么即使包含目录在搜索路径上,也无法识别可执行文件?

时间:2010-08-12 06:34:54

标签: path csh

我的搜索路径上有/ usr / sbin(echo $ PATH)。

我在这个目录中有我的lsof可执行文件。如果我只是在提示符下键入lsof,为什么我得不到lsof:command。我正在使用csh。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用rehash,因为我似乎记得csh使用哈希来查找可执行文件。尝试/usr/sbin/lsof还可以让您判断这是否是问题(或者可以告诉您实际上 的问题)。

同时检查lsof/usr/sbin目录的权限,以确保它们是可执行/可搜索的(虽然这不太可能是一个问题)。

如果做不到这一点,你应该等到这个问题被推到SU所属的地方: - )

答案 1 :(得分:0)

您使用的是csh还是tcsh?

这会产生什么输出? (如果您没有tcsh,请在第一行将tcsh更改为csh并注释掉where命令。)

#!/bin/tcsh -f

echo 'PATH:'
echo "$PATH" | tr ':' '\n' | sed 's/^/    /'

echo "% which lsof"
which lsof

echo "% where lsof"
where lsof

ls -lgd /usr/sbin /usr/sbin/lsof