尽管在 PATH 中,但找不到命令
Command not found although in PATH
在我的 sh
或 tcsh
中,我可以毫无问题地调用 netstat
。但是,使用 Bash 时,我收到消息:
bash: netstat: command not found
所有 shell 的 PATH 变量完全相同:
PATH=/usr/lpp/Printsrv/bin:/usr/lpp/java/J6.0/bin:/EXEX/exec:/bin:/usr/sbin:/etc:/usr/lpp/perl/bin:.:/usr/lpp/ported/bin:.:.
Netstat 位于 /bin 目录中,因此应该包含在 PATH 中...
有什么想法吗?
谢谢!
我们还没有足够的信息来说明这里出了什么问题,但我要冒昧地建议你的路径不是你想的那样,更不用说路径了你引用的是非常不标准的,很可能不是你想要的。
你说你的路是...
您引用的路径分解后如下所示:
/usr/lpp/Printsrv/bin
/usr/lpp/java/J6.0/bin
/EXEX/exec
/bin
/usr/sbin
/etc
/usr/lpp/perl/bin
.
/usr/lpp/ported/bin
.
.
当前工作目录(.
)三遍不会有问题,但看起来确实有点奇怪。
您缺少标准目录 /usr/bin
。如果你有 /usr/sbin
你也应该有 /sbin
以保持一致性。
我无法想象你为什么要把 /etc
放在你的路径中。该目录中不应该有可执行文件。
你的实际路径是什么...
炮弹之间应该没有区别。您在这里的 shell 中发现错误的可能性很小,因此让我们假设您的路径在每个 shell 中都不完全相同,并尝试找出为什么它看起来如此...
所有 shell 都应该告诉您,您的路径与这两个命令的路径相同:
# The PATH variable
echo "$PATH"
# The PATH environment variable
env | /bin/grep PATH
记住有两种变量。内部变量和环境变量。 PATH 应该是一个环境变量。
我不确定您是如何找到以下行的:
PATH=/usr/lpp/Printsrv/bin:/usr/lpp/java/J6.0/bin:/EXEX/exec:/bin:/usr/sbin:/etc:/usr/lpp/perl/bin:.:/usr/lpp/ported/bin:.:.
如果这是从您的 .profile
或 .bashrc
获取的,那么应该导出它以确保将 PATH 设置为环境变量。
export PATH=/usr/lpp/Printsrv/bin:/usr/lpp/java/J6.0/bin:/EXEX/exec:/bin:/usr/sbin:/etc:/usr/lpp/perl/bin:.:/usr/lpp/ported/bin:.:.
在我的 sh
或 tcsh
中,我可以毫无问题地调用 netstat
。但是,使用 Bash 时,我收到消息:
bash: netstat: command not found
所有 shell 的 PATH 变量完全相同:
PATH=/usr/lpp/Printsrv/bin:/usr/lpp/java/J6.0/bin:/EXEX/exec:/bin:/usr/sbin:/etc:/usr/lpp/perl/bin:.:/usr/lpp/ported/bin:.:.
Netstat 位于 /bin 目录中,因此应该包含在 PATH 中...
有什么想法吗?
谢谢!
我们还没有足够的信息来说明这里出了什么问题,但我要冒昧地建议你的路径不是你想的那样,更不用说路径了你引用的是非常不标准的,很可能不是你想要的。
你说你的路是...
您引用的路径分解后如下所示:
/usr/lpp/Printsrv/bin
/usr/lpp/java/J6.0/bin
/EXEX/exec
/bin
/usr/sbin
/etc
/usr/lpp/perl/bin
.
/usr/lpp/ported/bin
.
.
当前工作目录(.
)三遍不会有问题,但看起来确实有点奇怪。
您缺少标准目录 /usr/bin
。如果你有 /usr/sbin
你也应该有 /sbin
以保持一致性。
我无法想象你为什么要把 /etc
放在你的路径中。该目录中不应该有可执行文件。
你的实际路径是什么...
炮弹之间应该没有区别。您在这里的 shell 中发现错误的可能性很小,因此让我们假设您的路径在每个 shell 中都不完全相同,并尝试找出为什么它看起来如此...
所有 shell 都应该告诉您,您的路径与这两个命令的路径相同:
# The PATH variable
echo "$PATH"
# The PATH environment variable
env | /bin/grep PATH
记住有两种变量。内部变量和环境变量。 PATH 应该是一个环境变量。
我不确定您是如何找到以下行的:
PATH=/usr/lpp/Printsrv/bin:/usr/lpp/java/J6.0/bin:/EXEX/exec:/bin:/usr/sbin:/etc:/usr/lpp/perl/bin:.:/usr/lpp/ported/bin:.:.
如果这是从您的 .profile
或 .bashrc
获取的,那么应该导出它以确保将 PATH 设置为环境变量。
export PATH=/usr/lpp/Printsrv/bin:/usr/lpp/java/J6.0/bin:/EXEX/exec:/bin:/usr/sbin:/etc:/usr/lpp/perl/bin:.:/usr/lpp/ported/bin:.:.