puTTy 中符号链接目录后的 @ 符号

puTTy 中符号链接目录后的 @ 符号

在 puTTy 中,目录后面的 @ 符号表示什么?

前任。

pdf/
public_html/
video@

它是一个符号链接,但是在另一台服务器上,相同的符号链接后面没有@符号。

答案1

其区别在于:

$ ls

$ ls -F

但它不是油灰。

答案2

我知道这个问题已经得到解答了,但我想补充一些细节,而且很难在评论窗口中给出详细的解释。

ls命令使用-F标志来修饰某些文件类型,并用尾随字符来修饰。目录使用/、可执行文件*、符号链接@。如果您在两台机器上输入ls,并在两台机器上查看相同的文件系统,但看到不同的东西,我认为您在其中一台机器上有一个别名或函数,与ls另一台不匹配。在两台机器上输入type ls,我敢打赌你会在两台机器上得到不同的输出。

另外,在您的评论中,您谈到了硬链接和符号链接。它们非常不同。符号链接是指向文件或目录的指针。它与 Windows 中的快捷方式非常相似(尽管 UNIX 做得比 Windows 好,Windows 复制得不好)。它可以指向任何地方;在这个磁盘上,在另一个磁盘上。甚至它指向的东西也可能在那里,也可能不在那里。如果我有一个指向不存在的文件/目录的符号链接,它被称为悬空符号链接。

硬链接是文件的名称。文件实际上由两部分组成。一部分是数据,即您放入文件的实际信息。您的文本、歌曲等等。或者什么都没有,是一个空文件。然后考虑元数据,即有关文件的信息。它叫什么名字?它是什么类型的文件(文件、目录、fifo、符号链接等),我上次写入它是什么时候,文件权限是什么?这个元数据就是硬链接。在 UNIX 中,从这个名称和其他内容的元数据到实际文件没有一对一的关系。我可以创建更多这样的链接 - 不同的名称、不同的位置、不同的权限。这就是所谓的硬链接。系统总是在您创建文件时创建其中一个硬链接,但hard-linking通常仅在您使用 手动创建另一个硬链接时才会引用ln。硬链接只能与数据位于同一个文件系统上,这也是与符号链接的另一个区别。 Linux 系统也不允许您创建到目录的硬链接,因为这会在目录结构中产生循环并导致实际问题(MacOSX 对此稍微放宽,因为它使用硬链接使 Time Machine(tm) 备份对用户更加不可见)。

答案3

键入man ls以了解列出文件时给出的符号的含义。@表示该文件是符号链接

相关内容