Come si esegue un'iterazione su tutte le righe emesse da un comando utilizzando zsh, senza impostare IFS?Come si esegue l'iterazione su tutte le righe emesse da un comando in zsh?
Il motivo è che voglio eseguire un comando su ogni file prodotto da un comando e alcuni di questi file contengono spazi.
Ad esempio, dato il file eliminato:
foo/bar baz/gamma
Cioè, una singola directory 'foo', che contiene una sottodirectory 'bar baz', che contiene un file 'gamma'.
poi eseguire:
git ls-files --deleted | xargs ls
riporterà in quel file viene trattato come due file: 'foo/bar', e '/ baz/gamma'.
Mi serve per gestirlo come un file: 'foo/bar baz/gamma'.
il sistema ha il comando xargs? – lunixbochs
@lunixboches: Sì, lo fa - tuttavia, non riesce ancora a gestire correttamente le linee. – Arafangion
'git ls-files -z | xargs -0 ls' userà i separatori null (\ 0) invece degli spazi bianchi – lunixbochs