Ricerca nel sito web

Come eseguire un comando più volte in Linux


Per un motivo o per l'altro, potresti voler eseguire un comando ripetutamente più volte in Linux. Questa guida discuterà alcuni dei modi più comuni ed efficaci per raggiungere proprio questo obiettivo. Consideriamo il primo metodo.

Tieni presente che se intendi eseguire un comando dopo l'altro dopo ogni x secondi, puoi controllare – Come eseguire o ripetere un comando Linux ogni X secondi

Esegui un comando più volte in Linux utilizzando Bash for Loop

Il modo più semplice per ripetere un comando sulla shell Bash è eseguirlo per un ciclo. Puoi utilizzare la seguente sintassi, dove un contatore è una variabile (puoi dargli un nome a tua scelta come i o x ecc.) e n è un numero positivo per rappresentare il numero di volte in cui desideri che il comando venga eseguito:

for counter in {1..n}; do yourCommand_here; done

Ecco un esempio:

for x in {1..10}; do echo "linux-console.net - The #1 Linux blog $x"; done

Esegui un comando più volte in Linux utilizzando un ciclo while

In relazione al metodo precedente, un ciclo mentre può essere utilizzato anche per eseguire un comando più volte in Linux utilizzando la seguente sintassi:

i=1; while [ $i -le n ]; do yourCommand_here; i=$(($i++)); done
OR
i=1; while [ $i -le n ]; do yourCommand_here; ((i++)); done

Nel formato sopra, i rappresenta la variabile contatore, [ $i -le n ] è la condizione di test e n è il numero di volte desideri eseguire il comando (idealmente il numero di volte in cui la shell eseguirà l'iterazione del ciclo.

Un'altra parte importante del ciclo while è i=$ (($i+1)) o (($i++)) che incrementa il contatore fino alla condizione di test diventa falso.

Quindi puoi eseguire il tuo comando molte volte in questo modo (sostituisci 10 con il numero di volte in cui desideri ripetere il comando):

i=1; while [ $i -le 10 ]; do echo "linux-console.net - The #1 Linux blog $i";((i++)); done

Esegui un comando più volte utilizzando il comando seq

Il terzo modo per eseguire un comando più volte in Linux è utilizzare il comando seq che stampa una sequenza di numeri in modo incrementale insieme al comando xargs in questa forma:

seq 5 | xargs -I -- echo "linux-console.net - The #1 Linux blog"

Per aggiungere il conteggio alla fine di ciascun comando, utilizzare questa sintassi:

seq 5 | xargs -n 1 echo "linux-console.net - The #1 Linux blog"

Inoltre, controlla questi articoli correlati:

  • 4 strumenti utili per eseguire comandi su più server Linux
  • 4 modi per guardare o monitorare i file di registro in tempo reale
  • MultiTail: monitora più file contemporaneamente in un singolo terminale Linux

È tutto per ora. Se conosci altri metodi per eseguire un comando più volte in Linux, faccelo sapere nella sezione commenti qui sotto.