Polecenie uniksowe, aby usunąć dwa foldery jednocześnie?

21

Co to jest polecenie Unix, aby usunąć dwa foldery jednocześnie? Używasz rm -rf?

funk-shun
źródło

Odpowiedzi:

28

Tak:

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

„-F” nie jest obowiązkowe, jeśli możesz pisać do każdego pliku i katalogu lub jeśli nie przeszkadza ci zadawanie wielu pytań. Katalogi są usuwane sekwencyjnie, ale oba są usuwane w wyniku pojedynczego polecenia.

Jonathan Leffler
źródło
1
nie wiem, dlaczego tego nie spróbowałem ...
21

W bash istnieje sposób na wstawienie listy argumentów za pomocą nawiasów klamrowych:

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

Można go wstawić w dowolnym miejscu:

rm -rf /{folder1,folder2}/subfolder
will run
rm -rf /folder1/subfolder /folder2/subfolder
Kenny
źródło
5
Nazywa się to „rozszerzaniem powłoki”, jeśli ktoś chce to sprawdzić.
Sirex
tak to się nazywa! Próbowałem go wyszukać, ale nie mogłem nawet stworzyć dobrych kryteriów wyszukiwania.
kenny
Podsekcja opisująca ekspansję materiału w nawiasach klamrowych {…}to ekspansja nawiasów klamrowych ; jest to pierwszy krok wymieniony w części poświęconej rozszerzeniom powłoki, ponieważ występuje on pierwszy.
Jonathan Leffler,
6

Jeśli chcesz, aby usunięcie było faktycznie współbieżne, co może być szybsze, jeśli znajdują się na osobnych dyskach, ale prawdopodobnie wolniejsze, jeśli znajdują się na tym samym dysku:

rm -rf /path/to/folder1 &
rm -rf /other/folder/in/different/place
Thomas Padron-McCarthy
źródło
dobra uwaga, chociaż szukałem bardziej szybkiego (leniwszego) sposobu na usunięcie dwóch folderów