Bash 为什么我们要使用当前目录表示法执行.sh脚本?

Bash 为什么我们要使用当前目录表示法执行.sh脚本?,bash,Bash,我们班在unix上有一个我不知道答案的问题 “为什么必须使用./XXX.sh来执行bash可执行文件?”。我无法在web或我们的教科书中找到答案。当您调用命令时,shell在您的$PATH变量中查找该命令,它不会查找您当前的目录。因此,您必须明确地告诉shell命令的位置。在这种情况下,当命令或脚本位于当前目录中时,需要使用/XXX.sh调用它。事实上,您可以使用当前目录的完整路径(例如/some/path/XXX.sh)或相对于当前工作目录(例如。/../some/path/XXX.sh)调用

我们班在unix上有一个我不知道答案的问题


“为什么必须使用./XXX.sh来执行bash可执行文件?”。我无法在web或我们的教科书中找到答案。

当您调用命令时,shell在您的
$PATH
变量中查找该命令,它不会查找您当前的目录。因此,您必须明确地告诉shell命令的位置。在这种情况下,当命令或脚本位于当前目录
中时,需要使用
/XXX.sh
调用它。事实上,您可以使用当前目录的完整路径(例如
/some/path/XXX.sh
)或相对于当前工作目录(例如
。/../some/path/XXX.sh
)调用不在当前目录中的脚本