GNU/Linux >> Tutoriales Linux >  >> Linux

Bash script que procesa un número limitado de comandos en paralelo

Ver paralelo. Su sintaxis es similar a xargs , pero ejecuta los comandos en paralelo.


Usa el wait integrado:

process1 &
process2 &
process3 &
process4 &
wait
process5 &
process6 &
process7 &
process8 &
wait

Para el ejemplo anterior, 4 procesos process1 ... process4 se iniciaría en segundo plano y el shell esperaría hasta que se completen antes de iniciar el siguiente conjunto.

Del manual de GNU:

wait [jobspec or pid ...]

Espere hasta que el proceso secundario especificado por cada ID de proceso pid o especificación de trabajo jobspec salga y devuelva el estado de salida del último comando esperado. Si se proporciona una especificación de trabajo, se esperan todos los procesos del trabajo. Si no se proporcionan argumentos, se esperan todos los procesos secundarios actualmente activos y el estado de retorno es cero. Si ni jobspec ni pid especifican un proceso secundario activo del shell, el estado de retorno es 127.


Linux
  1. ¿Cómo ejecutar comandos bash de Linux en un script PERL?

  2. ¿Ejecutar comandos canalizados en paralelo?

  3. ¿Incrementar el número de compilación en Bash?

  4. Cómo cambiar la cantidad de comandos almacenados en Bash History

  5. Ejecute el comando bash en la canalización de jenkins

Automatice el procesamiento de imágenes con este script Bash

Comando de espera bash

Golpe para bucle

35 ejemplos de secuencias de comandos Bash

Cómo ejecutar un script Bash

Shell/Bash Script para encontrar números primos en Linux