Pour voir ce qui se passe, dans votre cas je ferais
$ ls -l ]?
$ ls | od -x
Vous pouvez créer un fichier avec n'importe quel caractère ASCII char ( man 7 ascii
) sous Unix. Ils sont presque toujours créés par accident. Parfois, il y a un caractère de fin dans un fichier.
$ ls | od -x # to find out.
Je les enlève habituellement avec soin? puisque ? correspond à 1 car. D'abord ls? pour voir ce qui correspond, alors rm ?
Ou s'il y a un étrange caractère de fin dans un fichier, puis<wierdfile?>
Il y avait une astuce pour créer un fichier avec le code ASCII de BEL (07). Ainsi, lorsque vous créiez un fichier ls
, vous entendiez un son.
$ touch `echo -e "\a"` # \a is BEL
$ ls # the filename is not really ?, it is really the BEL sign (07)
?
$ ls | od -x # see that it is 07
0000000 0a07
0000002
$ ls ? # ? with match any file with 1 char.
?
$ rm ? # just 1 file so safe to run it.
ou interactif pour un retrait encore plus sûr.
$ rm -i ?
rm: supprime le fichier vide régulier '\ a'? y
$ ls ?
ls: cannot access ?: No such file or directory
Oui, le fichier est parti.
[
(test
). Voirman test
.