Con xargs di Linux, puoi con­ver­ti­re l’input standard in comandi e uti­liz­zar­li di­ret­ta­men­te. Sebbene questo comando non sia usato molto spesso in Linux, può sem­pli­fi­car­ti molto il lavoro.

Cos’è il comando xargs su Linux?

Il comando Linux xargs (“extended arguments”) rientra tra quelli che molti utenti non usano mai o solo raramente. Tuttavia, può rendere il lavoro molto più semplice e può persino sal­va­guar­da­re il computer. In parole povere, xargs di Linux collega due comandi tra loro, valutando l’output di uno e ap­pli­can­do i risultati al secondo. Questo è par­ti­co­lar­men­te van­tag­gio­so se si elaborano un gran numero di file e si devono eseguire alcune ope­ra­zio­ni più volte.

Il comando xargs è incluso nella maggior parte delle di­stri­bu­zio­ni Linux, come Debian o Ubuntu, e non deve essere in­stal­la­to se­pa­ra­ta­men­te.

Come funziona il comando xargs?

xargs legge i dati da stdin (cioè lo standard input) e li converte in righe di comando. Per fare ciò, il comando cor­ri­spon­den­te deve essere fornito al comando come parametro o argomento. I ri­spet­ti­vi comandi vengono quindi eseguiti una o più volte. Se non si fornisce un comando speciale come parametro, xargs utilizza au­to­ma­ti­ca­men­te il comando echo di Linux.

Qual è la sintassi di xargs?

Se desideri usare il comando xargs nel terminale, ricorri a questa sintassi:

$ Primo_comando | xargs [Opzioni] [Secondo_comando]
bash

Questo fa sì che il secondo comando venga eseguito con gli argomenti del primo.

Quali opzioni ha il comando xargs?

Esistono numerose opzioni per xargs di Linux. Queste sono le più im­por­tan­ti:

  • -0 o –null: questa opzione fa sì che ogni carattere venga preso alla lettera e che gli argomenti vengano separati grazie al carattere NULL.
  • -a o –arg-file: questa opzione fa sì che gli argomenti vengano letti da un file piuttosto che dall’input standard.
  • -d o –delimiter: con questa opzione, i de­li­mi­ta­to­ri si basano sul carattere se­pa­ra­to­re e non sul carattere spazio. Anche in questo caso, ogni carattere viene preso alla lettera.
  • -p o –in­te­rac­ti­ve: questa opzione chiede se xargs deve con­ti­nua­re prima di ogni ese­cu­zio­ne.

Esempi per l’uso del comando xargs su Linux

La fun­zio­na­li­tà del comando xargs può essere il­lu­stra­ta al meglio con alcuni esempi.

$ find -name "*.txt" | xargs rm
bash

In questo esempio, si applica xargs con il comando find e il comando rm su Linux. Il risultato è che tutti i file con esten­sio­ne .txt vengono rimossi dal file system del computer.

$ find -name "*.txt" | xargs grep "fattura"
bash

In questo modo trovi tutti i file che con­ten­go­no la parola “fattura”. Per ottenere questo risultato, usi in aggiunta il comando grep di Linux.

Vai al menu prin­ci­pa­le