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


21

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

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.


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

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

dobra uwaga, chociaż szukałem bardziej szybkiego (leniwszego) sposobu na usunięcie dwóch folderów
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.