![尽管位于 PATH 中,但未找到可执行文件](https://linux22.com/image/1362456/%E5%B0%BD%E7%AE%A1%E4%BD%8D%E4%BA%8E%20PATH%20%E4%B8%AD%EF%BC%8C%E4%BD%86%E6%9C%AA%E6%89%BE%E5%88%B0%E5%8F%AF%E6%89%A7%E8%A1%8C%E6%96%87%E4%BB%B6.png)
我的 $PATH 设置了很多目录,~/bin
包括~/target/bin
我想执行 script.sh,~/target/bin
但出现错误bash: ~/bin/script.sh: No such file or directory
这让我很困惑,因为which
找到了正确的目录 ~/target/bin 并且 ~/target/bin/script.sh 执行正常。
bash 中是否有任何特殊设置可能会导致这种错误的路径处理?
答案1
您可以尝试运行hash -r
以清除可执行缓存。
Bash 将可执行文件的位置保存在缓存中,因此如果您重新运行该命令,它不必再次搜索整个路径。 有关hash
命令的更多信息