Допустим, у меня была папка с именем *
в /
. Я знаю, что такие общие команды, как rm -rf * не будут работать. Любая помощь?
8
2 ответа
14
Вы можете заключить в кавычки аргументы, чтобы предотвратить обработку оболочкой.
rm -r '/*'
Проверьте это безопасно с помощью ls
(в папках, содержащих файлы):
$ ls '*'
ls: *: No such file or directory
В этом случае двойные кавычки также будут работать, но если в них будет задействован $
, они не будут, так как оболочка предположит, что это переменная:
$ ls "foo$bar"
ls: foo: No such file or directory
$ ls 'foo$bar'
ls: foo$bar: No such file or directory
Для GNU rm
вы также можете добавить --
перед аргументами имени файла, чтобы предотвратить их анализ в качестве аргументов. Это позволит вам без проблем удалять файлы с именем -rf
.
7
используйте эту короткую команду:
rm /\*