为什么我必须用 ./ 来执行 bash 程序?

为什么我必须用 ./ 来执行 bash 程序?

为什么某些 bash 程序只有在我./在其名称之前输入时才会在我的系统上运行?

一个例子:在我的[...]/android/sdk文件夹中,我必须adb像这样执行:

./adb devices

为什么不只是adb devices

答案1

如果你跑

回显$PATH

您将看到系统将搜索要运行的命令的目录列表。

如果您想在当前工作目录中运行命令,那么您可以运行:

PATH=$PATH:.;导出路径

您可以将此行添加到您的文件中,~/.bash_profile以使此行为在会话中持续存在。

答案2

.是当前目录的符号。您必须包含 ,/以便它知道它不是.文件开头的 a 。如果您导航到不同的目录并键入文件的目录,则不必具有./

相关内容