关于linux中执行脚本或程序时指定的路径

假设/mnt/bin 目录下存在一个名为 hello.sh 的可执行文件。

1. 若当前目录是 /mnt/bin ,可以使用 ./hello.sh 来执行这个可执行文件,但是使用 hello.sh 就不可以。

2. 使用该文件的绝对路径可以执行该文件,例如 /mnt/bin/hello.sh

记得之前在某个地方看到过解释为什么需要使用 ./ 才能执行当前目录下的文件,具体解释复述不出来了。

然后潜意识里就觉得只要使用相对路径,就需要使用 ./

然后今天发现了另一种使用相对路径的形式:

#假设当前位于 /
mnt/bin/hello.sh

#假设当前位于 /mnt
bin/hello.sh

这两种方式以及类似的方式都可以。

说这些的原因是这种新的方式纠正了我对指定路径的误解,其实在执行一个文件的时候,如果该文件不是位于当前目录,指定相对路径名的时候不需要使用 ./ 来指定当前目录的。

原文地址:https://www.cnblogs.com/vanwoos/p/5342451.html