Unix команда удалить две папки одновременно?

21

Что такое команда Unix для удаления двух папок одновременно? Используя rm -rf?

фанк-шан
источник

Ответы:

28

Да:

rm -rf /path/to/folder1 /other/folder/in/different/place

'-F' не обязателен, если вы можете писать в каждый файл и каталог, или если вы не возражаете, когда вам задают много вопросов. Каталоги удаляются последовательно, но оба они удаляются в результате одной команды.

Джонатан Леффлер
источник
1
я не знаю, почему я просто не попробовал это ...
21

В bash есть способ вставить список аргументов с помощью фигурных скобок:

rm -rf /path/to/{folder1,folder2}
will run
rm -rf /path/to/folder1 /path/to/folder2

Он может быть вставлен куда угодно:

rm -rf /{folder1,folder2}/subfolder
will run
rm -rf /folder1/subfolder /folder2/subfolder
Kenny
источник
5
Его называют «расширение оболочки», если кто-то хочет посмотреть его.
Sirex
так вот как это называется! Я пытался найти его, но не смог даже сформировать хорошие критерии поиска.
Кенни
Подраздел, который описывает расширение материала в фигурных скобках, {…}является расширением фигурных скобок ; это первый шаг, перечисленный в разделе о расширениях оболочки в целом, потому что он происходит первым.
Джонатан Леффлер
6

Если вы хотите, чтобы удаление происходило одновременно, что может быть быстрее, если они находятся на разных дисках, но, вероятно, медленнее, если они находятся на одном и том же:

rm -rf /path/to/folder1 &
rm -rf /other/folder/in/different/place
Томас Падрон-Маккарти
источник
Хороший вопрос, хотя я искал более быстрый (более ленивый) способ удаления двух папок