Se si tenta di reindirizzare l'output da un comando Linux a un altro, è possibile che si verifichino errori in cui il comando non riesce perché il suo elenco di argomenti è troppo lungo.

Fortunatamente, esiste un comando sui sistemi Linux che formatta correttamente gli argomenti in comandi. Si chiama xargs ed ecco come usarlo.

Perché usare xargs?

Quello che fa xargs è che riceve l'output standard e lo formatta in modo che un altro comando possa riceverlo. Mentre molte utility Linux possono accettare input standard, alcune accettano solo argomenti come input.

Questi potrebbero non riuscire se si tenta di reindirizzare l'input standard al comando. Alcuni comandi accettano ancora solo un certo numero di argomenti e xargs si occupa di questo per te.

Come usare xargs su Linux

Puoi chiamare xargs in questo modo:

xargs [comando]

xargs tiene traccia della lunghezza degli argomenti che un comando accetta e formatta lo standard input per produrre un elenco di argomenti da fornire al comando. Quando raggiunge il limite di una riga di comando, lo farà

instagram viewer
invocare il comando ancora con gli argomenti rimanenti.

Utilizzo di xargs in Pipelines

L'utilità di xargs arriva quando viene utilizzato nelle pipeline. Un esempio inventato potrebbe essere il piping cat to echo, che è un comando che accetta solo argomenti, non input standard.

gatto | eco

Ciò farà sì che l'eco stampi qualsiasi cosa tu digiti su una riga non appena colpisci CTRL+D.

xargs è più comunemente usato con il comando find, con il comando trova utilizzato per elencare file e xargs utilizzato per elaborare l'elenco di file in qualche modo.

La sintassi del comando trova è abbastanza complicata, quindi perché inserire un altro comando? Se usi trova "-exec" opzione, avvierà un nuovo processo ogni volta che cerca in un file nella directory. L'uso di xargs è più efficiente.

Potresti voler eliminare i file in una directory precedente a una determinata data, ad esempio 90 giorni. Per fare ciò, utilizzeresti questa pipeline:

trovare. -mtime +90 -print | xargs rm

xargs aiuta i comandi di Linux a elaborare correttamente l'input

Con xargs, ora puoi assicurarti che i comandi prendano gli argomenti nel modo in cui ti aspetti. In combinazione con trova, ti consentirà di elaborare rapidamente i file sul tuo computer.

La capacità di reindirizzare input e output nella shell è uno dei punti di forza duraturi di Linux come conseguenza della filosofia Unix. Se vuoi saperne di più su come funziona il reindirizzamento input/output di Linux, continua a leggere.

Comprensione dell'I/O standard su Linux

Migliora il flusso di lavoro della riga di comando di Linux collegando più comandi insieme utilizzando I/O standard.

Leggi Avanti

CondividereTwittaE-mail
Argomenti correlati
  • Linux
  • Comandi Linux
  • Linux Bash Shell
Circa l'autore
David Delony (81 articoli pubblicati)

David è uno scrittore freelance con sede nel Pacifico nord-occidentale, ma originario della Bay Area. Fin dall'infanzia è un appassionato di tecnologia. Gli interessi di David includono la lettura, la visione di programmi TV e film di qualità, i giochi retrò e la raccolta di dischi.

Altro da David Delony

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti