什么是完整路径名?

sos*_*tee 31 command-line paths

我想了解完整路径名的真正含义。我的主目录中有一个名为 my_script 的文件。我假设完整路径名是 ./my_script,这意味着它在根文件夹中,但我不确定。有人可以请教我吗?

Rad*_*anu 39

不,你的假设是错误的。my_script主目录中文件的完整路径名是:/home/your_user_name/my_script. 当您输入./my_script终端时,您实际上是在尝试执行脚本(如果是可执行的),并且仅当您当前的工作目录为/home/your_user_name/. 要执行脚本,您还可以使用完整的文件路径,正如我所说的/home/your_user_name/my_script.

人们认为 UNIX 路径名的外观和感觉就像 Internet 地址,从而导致兼容性。可以使用以下命令在终端中找到当前工作目录的完整路径名:

pwd
Run Code Online (Sandbox Code Playgroud)

要查找用户主目录的完整路径,您可以使用:

echo ~
echo $HOME
echo /home/$USER
Run Code Online (Sandbox Code Playgroud)

以上三个命令是等价的。

要找出文件的完整路径名,您可以使用readlink命令。例如,在您的情况下:

cd ~
readlink -f my_script
Run Code Online (Sandbox Code Playgroud)


hyt*_*omo 8

完整路径名实际上是指从文件系统/目录到该文件或文件夹的完整路径。

例如,脚本的完整路径是:

/home/your_username/my_script
Run Code Online (Sandbox Code Playgroud)

或者,grep可执行文件的完整路径名是

/bin/grep
Run Code Online (Sandbox Code Playgroud)

至于./my_script,符号.代表当前目录,因此您实际上是说“在当前目录下查找名为 my_script 的文件或文件夹”