rm -f kann eine Datei nicht löschen

rm -f kann eine Datei nicht löschen

Ich habe eine Schriftart von heruntergeladen fonts.google.com. Ich habe sie nach entpackt ~/.fonts, das staticVerzeichnis wurde erstellt. Ich habe ihren Inhalt eine Ebene nach oben verschoben, nach ~/.fonts.

Nun kann ich das Verzeichnis nicht löschen, da es eine .uuidDatei enthält. Was mir aufgefallen ist, ist, dass diese Datei nicht gelöscht werden kann mit 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

Wie ist das möglich? ~/.fontsist nur ein normales Verzeichnis in meinem $HOME.

Ubuntu 21.10

Antwort1

Es kann gelöscht werden, wird aber nach ein paar Sekunden neu erstellt, wenn fontconfig eine Änderung bemerkt und die Schriftarten erneut scannt. (Die .uuid-Dateien hängen irgendwie mit dem Schriftartcache auf der Festplatte zusammen, den fontconfig erstellt.)

Mit anderen Worten, es handelt sich in beiden Screenshots nicht um dieselbe Datei. Um dies zu überprüfen, können Sie ls -iInode-Nummern oder stat .uuiddie Erstellungszeit anzeigen.

Verwenden Sie rm -rf. Dadurch wird das geleerte Verzeichnis per rmdir bearbeitet, bevor fontconfig die Datei neu erstellt.

Alternativ können Sie das Verzeichnis an einen anderen Ort verschieben (an einen Ort, an dem fontconfig nicht sucht) undDannLösche es.

verwandte Informationen