GNU/Linux >> Linux Esercitazione >  >> Linux

Trova i file e tarali (con spazi)

Potrebbe esserci un altro modo per ottenere ciò che desideri. Fondamentalmente,

  1. Utilizza trova comando per generare il percorso di qualsiasi file tu stia cercando. Reindirizza stdout a un nome file di tua scelta.
  2. Quindi tar con l'opzione -T che gli consente di prendere un elenco di percorsi di file (quello che hai appena creato con find!)

    find . -name "*.whatever" > yourListOfFiles
    tar -cvf yourfile.tar -T yourListOfFiles
    

Usa questo:

find . -type f -print0 | tar -czvf backup.tar.gz --null -T -

Sarà:

  • gestisci file con spazi, newline, trattini iniziali e altre stranezze
  • gestire un numero illimitato di file
  • non sovrascriverà ripetutamente il tuo backup.tar.gz come usando tar -c con xargs farà quando hai un gran numero di file

Vedi anche:

  • Manuale di GNU tar
  • Come posso creare un tar da stdin?, cerca null

Linux
  1. Come trovare file con autorizzazioni SUID e SGID in Linux

  2. Usa grep per trovare il contenuto nei file e spostarli se corrispondono

  3. Trova e copia i file

  4. Itera su un elenco di file con spazi

  5. Trova più file e rinominali in Linux

Come scaricare ed estrarre file Tar con un comando

Trova comando in Linux (Trova file e directory)

Trova i file persi con Scalpel

Come trovare file duplicati in Linux e rimuoverli

Trova facilmente file e directory su Linux

Come rinominare tutti i file con caratteri speciali e spazi in una directory?