解释“-bash:没有这样的文件或目录”

解释“-bash:没有这样的文件或目录”

为什么 bash 会声称文件不存在但实际上它确实存在?

$ ls -l a
-r-x------ 1 configurator configurator 3904 Dec  7 10:36 a

$ file a
a: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, stripped

$ ./a
-bash: ./a: No such file or directory

答案1

您出现此错误是因为您尝试在 64 位操作系统上运行 32 位可执行文件。

并且该消息No such file or directory不涉及名为 的可执行文件a。相反,它涉及的错误是辅助程序这是运行 32 位动态链接可执行文件所必需的a

您可以在静态和动态链接中找到更多信息在这个答案中

答案2

问题可能不是您尝试运行的文件,而是它所依赖的文件。运行ldd该文件以查看是否找不到其依赖项。

相关内容