GeeksforGeeks

il comando exec in Linux viene utilizzato per eseguire un comando dal bash stesso. Questo comando non crea un nuovo processo, sostituisce semplicemente il bash con il comando da eseguire. Se il comando exec ha esito positivo, non ritorna al processo chiamante.

Sintassi:

exec ] 

Opzioni:

  • c: Viene utilizzato per eseguire il comando con ambiente vuoto.
  • un nome: Utilizzato per passare un nome come argomento zeroth del comando.
  • l: Usato per passare dash come argomento zeroth del comando.

Nota: il comando exec non crea un nuovo processo. Quando eseguiamo il comando exec dal terminale, il processo terminale in corso viene sostituito dal comando fornito come argomento per il comando exec.

Il comando exec può essere utilizzato in due modalità:

  • Exec con un comando come argomento: Nella prima modalità, l’exec tenta di eseguirlo come comando passando gli argomenti rimanenti, se presenti, a quel comando e gestendo i reindirizzamenti, se presenti.

    Esempio 1:

    Esempio 2:

    Il comando exec cerca il percorso menzionato nella variabile PATH PATH per trovare un comando da eseguire. Se il comando non viene trovato, il comando exec e la shell escono in un errore.

  • Exec senza un comando: se non viene fornito alcun comando, i reindirizzamenti possono essere utilizzati per modificare l’ambiente shell corrente. Questo è utile in quanto ci consente di modificare i descrittori di file della shell secondo il nostro desiderio. Il processo continua anche dopo il comando exec a differenza del caso precedente, ma ora lo standard input, output ed error vengono modificati in base ai reindirizzamenti.

    Esempio:

    Qui il comando exec cambia lo standard dalla shell al file tmp e così tutti i comandi eseguiti dopo il comando exec scrivono i loro risultati in quel file. Questo è uno dei modi più comuni di utilizzare exec senza alcun comando.

Tag articolo:

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *