Quante volte abbiamo digitato il comando tar per estrarre un archivio, e ci siamo accorti di averlo fatto in una directory sbagliata?
E se magari la “directory sbagliata” fosse una con un centinaio di files? Non serve imprecare, e rimboccarsi le maniche per cancellare i files giusti, ma basta dare un semplice comando in “pipeline”.
tar tf – | while read filename; do rm -rf “$filename”; done
oppure più rapidamente (se non ci sono spazi nei filename):
tar tf – | xargs rm -rf
Vediamo nel dettaglio cosa stiamo facendo. Nella prima istruzione, il parametro “t” di tar indica di non estrarre realmente l’archivio ma solo di leggerne il contenuto; quest’ultimo verrà mandato in “pipe” al comando successivo che rimuoverà solo i files contenuti nell’archivio in questione.
Un piccolo Script che migliorare sensibilmente la vita di un utente, incorso in un errore di scompattazione.