![CentOS - 除非输入绝对路径,否则二进制文件不会运行](https://linux22.com/image/635378/CentOS%20-%20%E9%99%A4%E9%9D%9E%E8%BE%93%E5%85%A5%E7%BB%9D%E5%AF%B9%E8%B7%AF%E5%BE%84%EF%BC%8C%E5%90%A6%E5%88%99%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E4%B8%8D%E4%BC%9A%E8%BF%90%E8%A1%8C.png)
我不确定这是否是我尝试运行的程序 (amidelnx) 的怪癖,或者是否是某些二进制文件的一般功能问题。此外,我读过这个问题但这和我经历的不同。
当在本地目录中使用“./”时,二进制文件运行良好,但如果我将其移动到/usr/bin 并尝试像常规命令一样输入它,则会失败并显示“30 - 错误:打开文件进行读取时出现问题。”。
我也可以输入它的绝对路径,这样也可以,但如果我只是输入命令则不行:
/usr/bin/amidelnx - works
cd /usr/bin;./amidelnx - works
mv /usr/bin/amidelnx /root; cd /root; ./amidelnx - works
mv amidelnx /usr/bin; amidelnx - does NOT work
有任何想法吗?
答案1
输入which amidelnx
。它将二进制位置缓存在路径中的其他位置,并尝试从那里打开它。
答案2
您使用的是 csh 变体吗?如果是,则将程序放入路径中的目录不会自动出现,直到您发出“rehash”命令。这似乎是您遇到的问题。