📜  bash 调用相对于当前脚本的另一个脚本 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:39:29.568000             🧑  作者: Mango

Bash 调用相对于当前脚本的另一个脚本

在 Bash 中,有时候我们需要在一个脚本中调用另一个脚本,而这个脚本可能位于相对路径下,这时候该怎么办呢?下面介绍几种方法。

方法一:使用相对路径调用脚本

如果另一个脚本和当前脚本位于同一目录下,我们可以使用相对路径调用脚本。例如,当前脚本为 script1.sh,另一个脚本为 script2.sh,它们都在 /home/user/scripts/ 目录下,那么在 script1.sh 中调用 script2.sh 的命令是:

./script2.sh

这里的 "./" 表示当前目录。

如果当前脚本不在脚本所在的目录下,那么我们需要先 cd 到脚本所在的目录,再执行相对路径调用。例如,如果当前脚本在 /home/user/ 目录下,我们需要执行:

cd /home/user/scripts/
./script2.sh
方法二:使用绝对路径调用脚本

如果我们知道另一个脚本的绝对路径,我们可以直接调用它。例如,如果 script2.sh 的绝对路径为 /home/user/scripts/script2.sh,那么在 script1.sh 中调用它的命令是:

/home/user/scripts/script2.sh
方法三:使用 $PWD 变量调用脚本

$PWD 变量表示当前目录的绝对路径,我们可以使用它来调用相对路径下的脚本。例如,如果 script2.sh 位于脚本所在目录下,那么在 script1.sh 中调用它的命令是:

$PWD/script2.sh

如果当前脚本不在脚本所在目录下,我们需要先 cd 到脚本所在的目录,再执行 $PWD 变量调用。例如,如果当前脚本在 /home/user/ 目录下,我们需要执行:

cd /home/user/scripts/
$PWD/script2.sh

以上就是在 Bash 中调用相对于当前脚本的另一个脚本的几种方法。