D'une manière ou d'une autre, un fichier nommé a -]???????qété créé sur mon terminal. J'ai essayé rm -f "-] ??????? q" (entre guillemets), mais il n'a pas été supprimé. (Erreur ::) rm: invalid option -- ]. Comment puis-je le supprimer?
D'une manière ou d'une autre, un fichier nommé a -]???????qété créé sur mon terminal. J'ai essayé rm -f "-] ??????? q" (entre guillemets), mais il n'a pas été supprimé. (Erreur ::) rm: invalid option -- ]. Comment puis-je le supprimer?
Réponses:
Par exemple, avec:
rm -- '-]???????q'
Où --signifie: "arrêter l'analyse des options".
--, je suppose que c'est une sorte de standard de facto en raison de la getoptfonction.
Vous pouvez utiliser le nom de fichier avec rm ou le numéro d'inode avec find comme:
rm -- -]???????q
# or
-> ls -i
47984689 blah.ui 47983771 __init__.py
47983773 testpy.e4p 47985161 Ui_blah.py
-> find -inum 47983773
./testpy.e4p
-> find -maxdepth 1 -inum 47983773 -exec rm -i '{}' \;
#or
-> find -maxdepth 1 -inum 47983773 -delete
find -maxdepth 1 -inum 47983773 -delete
rm ./"-]???????q"
Les guillemets doubles empêchent le shell d'étendre les marques d'interrogation. Par exemple, si vous aviez un autre fichier appelé -] foobar.q :
$ touch ./"-]???????q" ./-]foobar.q
$ echo ./-]???????q
./-]foobar.q ./-]???????q