8 votes

Comment supprimer un dossier appelé * in / à partir de bash ?

Supposons que j'aie un dossier nommé * sous / . Je sais que les commandes courantes telles que rm -rf * ne fonctionneront pas. Vous avez besoin d'aide ?

14voto

Daniel Beck Points 105590

Vous pouvez mettre les arguments entre guillemets simples pour éviter qu'ils ne soient traités par le Shell.

rm -r '/*'

Testez-le en toute sécurité en utilisant ls (dans les dossiers contenant des fichiers) :

$ ls '*'
ls: *: No such file or directory

Dans ce cas, les guillemets doubles fonctionneraient également, mais s'il y avait un $ impliquées, elles ne le seraient pas, car le Shell supposerait qu'il s'agit d'une variable :

$ ls "foo$bar"
ls: foo: No such file or directory
$ ls 'foo$bar'
ls: foo$bar: No such file or directory

Pour GNU rm Vous pouvez également ajouter -- avant les arguments de nom de fichier pour éviter qu'ils ne soient interprétés comme des arguments. Cela vous permettra de supprimer les fichiers nommés -rf sans problème.

7voto

Serge Points 2665

Utiliser cette courte commande :

rm /\*

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X