编辑文件时符号链接不会更改其时间戳

编辑文件时符号链接不会更改其时间戳

当我有一个文件a.txt并执行操作时ln -s a.txt b.txt,我会编辑它a.txta.txt时间戳会更改。但是当我编辑 时b.txtb.txt不会改变它的时间戳。只是a.txt被改变了。为什么b.txt的时间戳没有改变。确实a.txt如此。

例子:

$ ls -la
total 8
drwxr-xr-x  2 admin admin 4096 nov  5 16:53 .
drwxr-x--- 37 admin admin 4096 nov  5 16:53 ..
$ nano a.txt
$ ln -s a.txt b.txt
$ ls -la
total 12
drwxr-xr-x  2 admin admin 4096 nov  5 16:54 .
drwxr-x--- 37 admin admin 4096 nov  5 16:53 ..
-rw-r--r--  1 admin admin    4 nov  5 16:54 a.txt
lrwxrwxrwx  1 admin admin    5 nov  5 16:54 b.txt -> a.txt
$ echo wait a minute
wait a minute 
$ nano b.txt
$ ls -la
total 12
drwxr-xr-x  2 admin admin 4096 nov  5 16:56 .
drwxr-x--- 37 admin admin 4096 nov  5 16:53 ..
-rw-r--r--  1 admin admin    9 nov  5 16:56 a.txt
lrwxrwxrwx  1 admin admin    5 nov  5 16:54 b.txt -> a.txt 
$ echo wait a minute again
wait a minute again
$ nano a.txt
$ ls -la
total 12
drwxr-xr-x  2 admin admin 4096 nov  5 16:58 .
drwxr-x--- 37 admin admin 4096 nov  5 16:53 ..
-rw-r--r--  1 admin admin   13 nov  5 16:58 a.txt
lrwxrwxrwx  1 admin admin    5 nov  5 16:54 b.txt -> a.txt

首先看这一行:

-rw-r--r--  1 admin admin    4 nov  5 16:54 a.txt
lrwxrwxrwx  1 admin admin    5 nov  5 16:54 b.txt -> a.txt

然后看看这个,当我编辑b.txt时,只有a.txt的日期改变了

-rw-r--r--  1 admin admin    9 nov  5 16:56 a.txt
lrwxrwxrwx  1 admin admin    5 nov  5 16:54 b.txt -> a.txt 

好的,我知道 b.txt 是 a.txt 的符号链接。所以你编辑a.txt。但为什么我的操作系统不只更改 a.txt 的日期。当我编辑b.txt时。更改 b.txt 的日期会更有用。

但是,您也可以说,当我在目录中编辑文件时(我编辑了一个文件,并且使用了该目录),该目录不会更改其日期。该目录用于编辑其中的文件。但是当我编辑其中的文件时,操作系统确实更改了目录日期

答案1

因为当您要求编辑时,b.txt您 edit a.txt,链接不会更改:遍历链接不会更改它。

尝试访问链接会访问它指向的文件(或最终指向的文件,该链接可能指向一个指向最终指向文件/目录/其他内容的链接的链接)。链接只能通过使用特殊的链接访问例程来访问。此外,软链接无法编辑(只能创建和删除)。

答案2

答案:

  1. 当您打开文件的符号链接时,您确实打开了符号链接,读取了符号链接(链接)中的文本,关闭它并打开了它链接到的文件。这意味着当你编辑它时。您从未编辑过符号链接文件。

  2. 目录包含另一个目录或指向文件的指针,如下所示:

这是磁盘开头的数据。

A 16:44:
   -- B 17:18:
       -- C 3kb: 15754
       -- D 4kb: 26544
   -- E 18:10:
       -- F 6kb: 16754
       -- G 8kb: 27544

当您编辑目录中的文件时。文件大小已更改,日期已更改(以及更多属性)。这在目录信息中发生了变化。所以您还编辑了目录数据(大小、日期...)。目录也改变了。

结果:

这是编辑后C盘开头的数据。

A 18:20:
   -- B 18:20:
       -- C 8kb: 15754
       -- D 4kb: 26544
   -- E 18:10:
       -- F 6kb: 16754
       -- G 8kb: 27544

相关内容