rm ne peut pas supprimer les fichiers commençant par –

J’ai un script qui crée des fichiers et parfois ils se retrouvent avec 2 tirets au début, est-il possible de les supprimer mv ne fonctionne pas non plus

Voici l’erreur que je reçois

$ ls --1355509766.jpg $ rm --1355509766.jpg rm: illegal option -- - usage: rm [-f | -i] [-dPRrvW] file ... unlink file $ rm "--1355509766.jpg" rm: illegal option -- - usage: rm [-f | -i] [-dPRrvW] file ... unlink file 

L’astuce habituelle est

 rm ./--1355509766.jpg 

Mise à jour: voici ce que l’ man rm a à dire à ce sujet:

 To remove a file whose name starts with a '-', for example '-foo', use one of these commands: rm -- -foo rm ./-foo 

Utilisez -- pour séparer les options des parameters.

 $ rm -- --1355509766.jpg 

Cela fonctionne avec d’autres commandes aussi. Par exemple:

 $ touch -- -v # create a file called -v $ grep foo -- -v # grep for "foo" in file called -v 

Essayez le nom de fichier avec le chemin:

 $ rm ./--file.name 

Exemple:

 $ echo dgag > --test.txt $ ls --test.txt $ rm ./--test.txt $ ls