在shell中,“./directory”命令是什么意思?

在shell中,“./directory”命令是什么意思?

我正在尝试在我的选项卡上安装 busybox。
我将 busybox 二进制文件复制到我的选项卡,转到其位置,然后打印“./busybox”,输入。
出现消息:“无法执行:是一个目录”
看起来 shell 在目录中搜索了要执行的有效二进制文件,但什么也没找到,也许我的选项卡需要一个特定的二进制架构师,而该架构师在 busybox 文件夹中不存在!但我没有任何证据。
感谢您的阅读和帮助!

答案1

不,shell 没有在目录中查找要执行的有效二进制文件,因此什么也没找到。它只是尝试执行目录。显然,这不是正确的做法。

有时,在某些 shell 中(例如autocd设置了 shopt 的 bash),执行目录会导致打开它,或将其设置为工作目录。但是,如果您想执行其中的文件,则需要明确给出命令。因此,如果 中有任何脚本./directory,您需要:

  • 移动到该目录

    cd directory
    

    然后执行可执行文件:

    ./executable
    
  • 或者从您现在所在的位置执行它而无需先移动,例如。

    directory/executable
    

相关内容