Il comando Xargs è uno strumento di riga di comando utilizzato per leggere i dati dall'input standard e successivamente esegue un comando in base all'ingresso standard. È uno strumento utile nella gestione dei file, soprattutto se utilizzato con altri comandi come MKDIR, GREP, RM ecc. In questo tutorial, impareremo come usare Xargs su Linux.
Sintassi di base
La sintassi di base quando si utilizza il comando Xargs è la seguente:
$ Command1 | Xargs Command2
Per passare lo stdout a Xargs, utilizziamo un simbolo del tubo (|).
Xargs può anche essere utilizzato con diverse opzioni e, in tal caso, prende la sintassi:
$ Command1 | Xargs [Options] Command2
Usando Xargs con il comando Trova
Il comando Xargs è comunemente usato con il comando Trova. Viene utilizzato per cercare file specifici ed eseguire ulteriori elaborazioni su tali file utilizzando Xargs. La sintassi per la combinazione di Xargs con Find è:
$ find [directory] -Name "[Search -Term]" -Type F | Xargs [comando]
Quando si utilizza Xargs con Find, non include file che contengono caratteri speciali nei loro nomi. È consigliabile utilizzare l'opzione Trova -print0 per includere tali file.
Nell'esempio seguente, useremo il comando Trova per cercare tutti i file con il .txt estensione e poi eliminali. Primo elenco usando il comando LS.
$ ls
Ora, invociamo il comando Trova e il comando Xargs per individuare tutti i file di testo (.txt) ed eliminali.
$ find /home /james -name "*.txt "-type f -print0 | xargs rm -f
Usando xargs con grep
Inoltre, il comando XARGS può essere utilizzato con GREP per cercare una stringa in un elenco di file specificati. Usa la sintassi di seguito:
$ Trova. -Nome 'Search-Term' | Xargs grep 'stringa-to-find-in-files'
Nell'esempio seguente, abbiamo prima cercato i file con il .TXT estensione e quindi li ha convocati su Xargs, che ha quindi eseguito il comando GREP. Possiamo osservare che ha cercato il campione di stringa.'
Esegui più comandi con il comando Xargs
Per eseguire più comandi con Xargs, utilizzare l'opzione -I. La sintassi utilizzata è:
[Comando] | Xargs -i % sh -c '[comando -1] %; [Command-2] %'
Diamo un'occhiata all'esempio qui sotto; Eseguimo due comandi; Innanzitutto, creeremo tre file utilizzando il comando touch e quindi elencheremo utilizzando il comando LS.
Leggi gli elementi dal file
Xargs viene utilizzato per leggere l'input standard. Per leggere gli elementi in un file, utilizzare il comando XARGS insieme all'opzione -A.
$ xargs -a [nome file]
Visualizza comandi eseguiti da Xargs
Per vedere i comandi eseguiti da Xargs in output standard, utilizzare l'opzione -t. La sintassi è:
$ [comando] | Xargs -t [Comando]
Nell'esempio seguente, si noti che Xargs ha eseguito il comando touch sulla stringa fornita da un'eco.
Limitare l'output per riga
È possibile controllare il numero di argomenti passati al comando Xargs in un determinato momento. Usa l'opzione -N per specificare il numero di argomenti a cui stai limitando gli Xarg.
$ [comando-fornitura-input] | Xargs -n [numero] [Comando]
Nell'esempio seguente, Xargs divide la stringa dal comando Echo in. a tre parti. Quindi esegue l'eco per ogni parte.
Rimuovere gli spazi vuoti nella stringa
Xargs può essere utilizzato come strumento per rimuovere gli spazi vuoti da una stringa. Tuba la stringa sul comando Xargs. Usa la sintassi di seguito:
$ echo "stringa" | Xargs
Nell'esempio seguente, dopo l'esecuzione di Xargs, il comando è la stringa viene stampata senza spazi prima e dopo le doppie virgolette
$ echo "comando xargs su linux" | Xargs
Elenco numero di righe/parole/caratteri in ogni file
Xargs può essere usato come strumento per visualizzare un elenco con il numero di righe, parole e caratteri nei file. Usa il comando WC (conteggio delle parole) dopo Xargs per visualizzare la linea, le parole e il conteggio dei caratteri di file specifici
$ ls file | Xargs WC
Nell'esempio seguente, abbiamo usato WC per elencare il numero di caratteri nei file che portano la stringa "file":
Specificare il delimitatore
Per modificare il delimitatore dall'impostazione predefinita, utilizzare l'opzione di comando -D seguita da un carattere che si desidera utilizzare come nuovo delimitatore. La sintassi è mostrata di seguito:
$ [comando-] | Xargs -d [new -defelimiter] | Xargs [comando]
Nell'immagine qui sotto, cambiamo il nostro delimitatore * e quindi applichiamo MKDIR a ciascun comando.
Copia di file in più directory
Xargs può essere utilizzato per copiare i file in più directory. Usa la sintassi di seguito:
$ echo [Directory1] [Directory2] | Xargs -n 1 cp -v [file]
Conclusione
Xargs è una potente utilità della linea di comando per l'uso quotidiano. Per informazioni più dettagliate, leggi il collegamento ipertestuale “http: // man7.Org/Linux/Man-Pages/Man1/Xargs.1.Pagina uomo xargs html ".