In qualche modo sono riuscito a creare un file che non sembra avere un nome file. Ho trovato alcune informazioni su come ottenere maggiori dettagli del file nel thread seguente.
Tuttavia, ho provato alcuni dei suggerimenti elencati e non riesco a eliminare il file. Non sono sicuro di cosa ho fatto per crearlo, ma è successo durante il tentativo di copiare un file xml.
Alcune informazioni sul file sono le seguenti;
> ls -lb
total 296
-rw-r--r-- 1 voyager endeavor 137627 Jan 12 12:49 177
> file *
: XML document
> ls -i
417777
Ho provato a trovare usando l'interruttore inum e poi collegarlo a rm dato che sembrava il modo più infallibile per sbarazzarmene. Tuttavia, l'esempio fornito in fondo al thread collegato di seguito non è riuscito per me. Esempio era:
> find -inum 41777 -exec ls -al {} ;
find: illegal option -- i
find: [-H | -L] path-list predicate-list
quindi ho provato a utilizzare prima l'elenco dei percorsi come il seguente, ma nemmeno quello ha funzionato:
> find . -inum 41777 -exec ls -al {} ;
Non sono sicuro di quale sia il carattere non stampabile 177 o di come posso passarlo a un rm
comando, ma voglio davvero assicurarmi di non rovinare altri file/directory nel mio tentativo di eliminare questo file.
Risposta accettata:
Il file ha un nome, ma è composto da caratteri non stampabili. Se usi ksh93, bash, zsh, mksh o FreeBSD sh, puoi provare a rimuoverlo specificando il suo nome non stampabile. Per prima cosa assicurati che il nome sia corretto con:ls -ld $'177'
Se mostra il file corretto, usa rm:rm $'177'
Un altro approccio (un po' più rischioso) consiste nell'usare rm -i -- *
. Con l'opzione -i rm richiede conferma prima di rimuovere un file, quindi puoi saltare tutti i file che vuoi conservare tranne quello.
Buona fortuna!