Quindi, hai un file di testo come questo:
file1 file2 ..
E vuoi eseguire un comando su ogni riga del file (diciamo, chmod 644). Come tutte le cose UNIX, ci sono più di un modo per fare le cose, ma ecco la risposta rapida e sporca:
xargs -0 -n 1 chmod 644 < <(tr \\n \\0 <filelist.txt)
Quindi, questo eseguirà xargs su std. input (filelist.txt).
-n è max argomenti – in questo caso abbiamo 1 arg. (l'elenco dei file nel file – per riga).
-0 significa che le righe di input sono terminate da un carattere nullo, non da uno spazio bianco, per mantenere le cose in ordine.
Infine, eseguiamo tr che elimina caratteri, in questo caso rimuovendo le nuove righe e gli spazi bianchi.