当我在当前工作目录中执行 ls -lart
时,它会显示
lrwxrwxrwx 1 root 10004 36 Dec 16 17:59 index.html ->/home/moviebeam/assets/ui/index.html
但我看不到文件的内容。最重要的是文件 index.html
不在路径 /home/moviebeam/assets/ui/
中。那为什么当我运行命令 ls -lrt
时它会出现?
最佳答案
这个:
lrwxrwxrwx 1 root 10004 36 Dec 16 17:59 index.html ->/home/moviebeam/assets/ui/index.html
是指向原始文件的软链接(soft link)。创建时会检查此目标文件是否存在,但是一旦创建了软链接(soft link)(或符号链接(symbolic link)),就可以删除目标文件,并且软链接(soft link)仍然存在。
如果您希望在您的链接中保留文件的内容,而目标文件可以被删除,那么您应该创建一个硬链接(hard link)(ln 而不是 ln -s)。
关于linux - ls -lrt 显示不存在的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20657702/