La soluzione praticamente definitiva quando si tratta di file che non possono essere eliminati con mezzi normali:
ls -il
La prima colonna mostrerà il numero di inode dei file.
find . -inum [inode-number] -exec rm -i {} \;
Questo eliminerà il file con il numero di inode specificato dopo la verifica.
Dovresti essere in grado di fare riferimento a quel file come ~/~
(senza virgolette) perché tilde-expansion applica solo la tilde (~
) all'inizio della parola.
Citalo (rm '~'
) o esegui l'escape (rm \~
).
È sempre uno di quelli (anche per es. $
), oppure aggiungi --
per evitare che il nome del file venga interpretato come argomento:rm -- -i
rimuove il file denominato -i
; utile anche per rm -- *
quando vuoi eliminare tutti i file nella directory corrente:Nessun rm -f *
accidentale solo perché un file si chiama così.