Unix中的绝对路径到相对路径

Unix中的绝对路径到相对路径,unix,ls,.net,Unix,Ls,.net,此命令仅列出my fileAsst目录中的文本文件: ls ~/UnixCourse/fileAsst/*.txt 现在,我需要做同样的事情,但使用相对路径,到目前为止,我尝试的是: ls ~/UnixCourse/../*.txt 但这是说我没有得到正确的答案,谁能给我一些提示或解释一下相对路径和绝对路径之间的区别,因为我仍然不在它下面。绝对路径: 绝对路径是包含根目录和包含文件或文件夹的所有其他子目录的路径 ~/UnixCourse/fileAsst/*.txt 相对路径

此命令仅列出my fileAsst目录中的文本文件:

  ls ~/UnixCourse/fileAsst/*.txt
现在,我需要做同样的事情,但使用相对路径,到目前为止,我尝试的是:

  ls ~/UnixCourse/../*.txt 
但这是说我没有得到正确的答案,谁能给我一些提示或解释一下相对路径和绝对路径之间的区别,因为我仍然不在它下面。

绝对路径: 绝对路径是包含根目录和包含文件或文件夹的所有其他子目录的路径

  ~/UnixCourse/fileAsst/*.txt
相对路径: 相对路径只是完整路径的一部分

  cd ~UnixCourse/fileAsst/ 

  ls *.txt

Relative通常是相对于某个现有目录,您当前通过cd命令位于其中。在您的问题中,您没有显示当前目录是什么。因此,没有单一的正确答案

如果您当前的目录是,例如,~这只是您的主目录的快捷方式,例如,/home/myuser,那么您的相对ls命令看起来就像我添加了隐含的上一个cd命令,以清楚地显示:

 cd ~
 ls UnixCourse/fileAsst/*.txt
同样,如果当前目录为~/UnixCourse,则相对ls命令如下所示:

 cd ~/UnixCourse
 ls fileAsst/*.txt
或者最简单的情况是,当您已经在要列出以下内容的目录中时:

 cd ~/UnixCourse/fileAsst
 ls *.txt
明白了吗

最后,正如你偶然发现的,我假设你发现了,你可以使用。。和在路径中,表示向上或当前目录的一个子目录

例如,以下路径是等效的,所有路径都解析为UnixCourse/fileAsst:

 UnixCourse/../UnixCourse/fileAsst/
 UnixCourse/SomeOtherDir/../fileAsst/
 UnixCourse/./fileAsst
 UnixCourse/fileAsst/YetAnotherDir/../

请注意,这是一个正交概念,可用于相对路径和绝对路径。

有两类路径名:

绝对值:以斜杠开始。 相对:不要以斜线开头。 无论当前工作目录如何,绝对路径名都具有相同的含义。绝对路径名可能包含。。初始斜杠后的组件。没有..的绝对路径名。。不遍历符号链接的组件有时被称为“实路径”,在系统调用realpath之后,realpath可用于确定名称的实路径

相对路径名相对于当前工作目录;从概念上讲,每个相对路径名都可以被视为以./开头。相对名称可以以..开头。。从当前工作目录向上移动。相对路径名的一个特例是一个简单的文件名—一个没有显式目录组件的名称。当然,这是当前目录中的文件或其他命名对象

要从绝对路径名确定相对路径名,还必须知道当前工作目录

有关详细信息,请参阅:

-标记并应用于Windows而不是Unix。
没有看到一行字的答案

ls ../fileAsst/*.txt

希望能帮助到别人

~/UnixCourse/./.txt与going~/.txt相同。../表示基本上返回一个文件夹。在relatove路径中,它将../指定为路径中向上的层次结构,