GeeksforGeeks

el comando exec en Linux se usa para ejecutar un comando desde el propio bash. Este comando no crea un nuevo proceso, solo reemplaza el bash con el comando a ejecutar. Si el comando exec tiene éxito, no vuelve al proceso de llamada.

Sintaxis:

exec ] 

Opciones:

  • c: Se utiliza para ejecutar el comando con un entorno vacío.
  • un nombre: Se usa para pasar un nombre como argumento cero del comando.
  • l: Se usa para pasar dash como argumento cero del comando.

Nota: el comando exec no crea un nuevo proceso. Cuando ejecutamos el comando exec desde el terminal, el proceso de terminal en curso se reemplaza por el comando que se proporciona como argumento para el comando exec.

El comando exec se puede usar en dos modos:

  • Exec con un comando como argumento: En el primer modo, el exec intenta ejecutarlo como un comando pasando los argumentos restantes, si los hay, a ese comando y administrando las redirecciones, si las hay.

    Ejemplo 1:

    Ejemplo 2:

    El comando exec busca la ruta de acceso mencionada en la variable PATH PATH para encontrar un comando a ejecutar. Si el comando no se encuentra el comando exec así como la cáscara sale un error.

  • Exec sin un comando: Si no se proporciona ningún comando, las redirecciones se pueden usar para modificar el entorno de shell actual. Esto es útil, ya que nos permite cambiar los descriptores de archivo del shell según nuestro deseo. El proceso continúa incluso después del comando exec, a diferencia del caso anterior, pero ahora la entrada, la salida y el error estándar se modifican de acuerdo con las redirecciones.

    Ejemplo:

    Aquí el comando exec cambia el estándar del shell al archivo tmp y, por lo tanto, todos los comandos ejecutados después del comando exec escriben sus resultados en ese archivo. Esta es una de las formas más comunes de usar exec sin ningún comando.

Etiquetas del artículo:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *