it-swarm.it

Come si esegue una corsa a secco di rm per vedere quali file verranno eliminati?

Voglio vedere quali file verranno eliminati quando si esegue un rm in Linux. La maggior parte dei comandi sembra avere un'opzione di esecuzione a secco per mostrare solo tali informazioni, ma non riesco a trovare tale opzione per rm. È anche possibile?

91
Cory Klein

Di 'che vuoi correre:

rm *.txt

Puoi semplicemente eseguire:

echo rm *.txt

o anche solo:

echo *.txt

per vedere quali file rm eliminerebbero, poiché è Shell che espande *.txt, non rm.

L'unica volta che questo non ti aiuterà è per rm -r.

Se si desidera rimuovere ricorsivamente file e directory, è possibile utilizzare find anziché rm -r, per esempio.

find . -name "*.txt" -print

quindi se fa quello che vuoi, cambia -print per -delete:

find . -name "*.txt" -delete
127
Mikel

Si può dire:

rm -i

per eseguirlo in modalità interattiva, quindi rm ti chiederà di confermare se ogni file deve essere eliminato. Potresti semplicemente rispondere di no a ciascun file per vedere quali sarebbero interessati.

17
Justin Ethier

Puoi usare ls per elencare tutti i file che verranno rimossi da rm:

ls ../path/*.txt

Se è necessario elencare per visualizzare i file che verranno eliminati con un _ ricorsivo rm, utilizzare -R flag con ls:

ls -R ../path/*.txt
4
Veneet Reddy