rm -f 无法删除文件

rm -f 无法删除文件

我从 下载了一个字体fonts.google.com。我将其解压到~/.fontsstatic目录已创建。我将其内容上移一级,到~/.fonts

现在我无法删除该目录,因为它包含一个.uuid文件。令我震惊的是,该文件无法使用以下命令删除rm

[ .fonts/static ]% ls -la
total 12K
drwxr-xr-x 2 me group 4.0K Jun 10 11:49 .
drwxr-xr-x 3 me group 4.0K Jun 10 11:24 ..
-rw-r--r-- 1 me group   36 Jun 10 11:49 .uuid

[ .fonts/static ]% rm -f .uuid
                                                                                                                                 
[ .fonts/static ]% ls -la                                                                                                                                          
total 12K
drwxr-xr-x 2 me group 4.0K Jun 10 11:53 .
drwxr-xr-x 3 me group 4.0K Jun 10 11:24 ..
-rw-r--r-- 1 me group   36 Jun 10 11:53 .uuid

这怎么可能?~/.fonts在我的.txt文件中只是一个普通的目录$HOME

Ubuntu 21.10

答案1

它可以删除,只要 fontconfig 注意到更改并重新扫描字体,几秒钟后它就会重新创建。(.uuid 文件与 fontconfig 构建的磁盘字体缓存有某种关联。)

换句话说,两张截图中的文件并不相同。ls -i查看 inode 编号或stat .uuid“创建”时间可验证这一点。

使用rm -rf,它将在 fontconfig 重新创建文件之前 rmdir 清空目录。

或者,将目录移到其他地方(移动到 fontconfig 不会查找的位置)并然后删除它。

相关内容