Question Supprimer un fichier nommé "."


J'ai trouvé un fichier dans un répertoire nommé "." Pas le "." indiquant le répertoire mais un fichier réel avec son contenu. Comme vous pouvez l'imaginer, cela cause toutes sortes de problèmes. Le problème est que je ne peux pas comprendre comment le supprimer. Comment puis-je supprimer un fichier nommé "." sans supprimer tout le répertoire actuel. Voici une liste juste pour vous montrer:

drwx------  2 mysql    mysql     36864 Jun 28 14:11 .
drwxrwxr-x  5 mysql    mysql      4096 Jun 26 06:46 ..
-rw-r--r--  1 user1    users      2287 Jun 24 14:32 .
-rw-rw----  1 mysql    mysql        65 Jun 21 21:16 db.opt
-rw-r--r--  1 mysql    mysql         0 Jun 28 14:11 .hidden

Vous pouvez voir le répertoire (.) Mais vous pouvez également voir le fichier appartenant à "user1" nommé "." de taille de fichier 2287. Comment pourrais-je supprimer ceci? (Exécution de RHEL 4.6).


6
2018-06-28 21:18


origine


La dernière fois que j'ai vu ça, c'était un rootkit, et j'ai été piraté. - skaffman
Wild suppose, mais renommer et ensuite supprimer?
@Sonny, il finirait par renommer le répertoire, je pense - Federico klez Culloca
Si / Quand cela arrive encore, regarde à l'intérieur le fichier ou le répertoire. Rechercher des indices d'un rootkit ou d'un virus ou quoi que ce soit. Ne pas simplement le supprimer. - grawity


Réponses:


Une façon consiste à utiliser le numéro d'inode

ls -i

Obtenez le numéro d'inode du fichier incorrect, faites comme si c'était 42

find . -inum 42 -exec rm -i {} \;

17
2018-06-28 21:24





Vérifiez qu'il n'y a pas d'espace avec ls -alQ:

drwxr-xr-x  2 adam adam 4096 2010-06-28 14:23 "."
-rw-r--r--  1 adam adam    0 2010-06-28 14:23 ". "
drwxr-xr-x 71 adam adam 4096 2010-06-28 14:23 ".."

11
2018-06-28 21:28



Probablement la meilleure réponse à ce jour. Peut probablement être suivi de "rm -i. \" (Sans les guillemets, notez l'espace échappé). - Platinum Azure


Essayer le retirer par numéro d'inode


6
2018-06-28 21:23





find -user user1 -print
find -user user1 -delete

Je suppose que ce n'est pas vraiment appelé "." Il y a probablement un caractère de contrôle ou similaire. Le ci-dessus le supprime en fonction du propriétaire. le -print est un essai pour éviter les surprises.


4
2018-06-28 21:22





Vous pouvez exécuter rm avec interactif et ne confirmer que les fichiers que vous souhaitez supprimer par exemple:

rm -i ./.

4
2018-06-28 21:24





Donc, il s'avère que ce n'était pas juste un "." Il y avait un caractère de contrôle dans le nom (^ M). En tant que tel, je viens de faire un: rm -i ". ^ M" (contrôle de séquence de touches-V control-M) et il a été supprimé.


4
2018-06-28 21:34





Êtes-vous sûr qu'il s'appelle '.' Il n'a aucun espace ou quoi que ce soit, ça s'appelle '. '?


2
2018-06-28 21:24