Comando Unix per cancellare due cartelle contemporaneamente?


21

Qual è il comando Unix per eliminare due cartelle contemporaneamente? Usando rm -rf?

Risposte:


28

Sì:

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

'-F' non è obbligatorio se puoi scrivere su ogni file e directory, o se non ti dispiace fare molte domande. Le directory vengono eliminate in sequenza, ma entrambe vengono eliminate come risultato di un singolo comando.


1
non so perché non ho solo provato questo ...

21

In bash, c'è un modo per inserire un elenco di argomenti con parentesi graffe:

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

Può essere inserito ovunque:

rm -rf /{folder1,folder2}/subfolder
will run
rm -rf /folder1/subfolder /folder2/subfolder

5
Si chiama "espansione della shell" se qualcuno vuole cercarlo.
Sirex,

quindi questo è come si chiama! ho provato a cercarlo ma non sono riuscito nemmeno a formare un buon criterio di ricerca.
Kenny,

La sottosezione che descrive l'espansione del materiale tra parentesi graffe {…}è l' espansione del controvento ; è il primo passo elencato nella sezione sulle espansioni della shell in generale perché si verifica per primo.
Jonathan Leffler il

6

Se vuoi che la cancellazione sia effettivamente concorrente, che può essere più veloce se si trovano su dischi separati, ma probabilmente più lentamente se si trovano sullo stesso:

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

buon punto, anche se stavo cercando di più un modo più veloce (più pigro) per eliminare due cartelle
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.