Comando exec en Linux: Reemplaza el proceso shell por otro programa
El comando exec en Linux sirve para invocar otros comandos, programas o procesos sin crear un proceso hijo, sustituyendo el proceso actual por el proceso que se desea ejecutar. No es algo que se utilize con frecuencia.
Por ejemplo, si estás en la terminal y escribes el comando exec ifconfig, obtendrás el resultado del comando ifconfig, pero ya no tendrás el shell después, ya que el proceso Bash será sustituido por ifconfig:
$ exec ifconfigen1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether c8:bc:c8:dc:c1:05 inet6 fe80::cabc:c8ff:fedc:c105%en1 prefixlen 64 scopeid 0x5 inet 10.0.1.5 netmask 0xffffff00 broadcast 10.0.1.255 nd6 options=1<PERFORMNUD> media: autoselect status: active [Processo concluído]
El exec es un programa heredado "viejo", en la época en que crear un proceso hijo al ejecutar un programa consumía una memoria escasa y una CPU compartida lenta. Simplemente copia el "binario" del programa que ejecuta encima del proceso que está en ejecución, evitando algunos ciclos de CPU para crear encabezado y buffers de un programa hijo.
Aprende mucho más sobre Linux en nuestro curso en línea. Puedes realizar la inscripción aquí. Si ya tienes una cuenta, o quieres crear una, solo ingresa o crea tu usuario aquí.
¿Te gustó? Comparte
Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.