He "heredado" algunos scripts de shell para máquinas Linux que ejecutan el shell "bash" de GNU. En un caso particular, la máquina ejecuta GNU bash versión 2.0.5b
Uno de esos scripts tiene una wait &
instrucción ("wait ampersand") como parte de la "línea" de un for
bucle. A primera vista, parece ser un idioma curioso / interesante, pero mis búsquedas en la web no arrojaron nada relevante. man wait
muestra la página de manual "BASH_BUILTINS" ("BASH BUILTINS COMMAND"), que tiene la siguiente descripción:
wait [n]
Wait for the specified process and return its termination status.
n may be a process ID or a job specification; if a job spec is given,
all processes in that job's pipeline are waited for. If n is not
given, all currently active child processes are waited for, and the
return status is zero. If n specifies a non-existent process or job,
the return status is 127. Otherwise, the return status is the exit
status of the last process or job waited for.
Al leer esa parte de esta página de manual, me parece que wait &
silenciosamente (en segundo plano) se asegura de que "se esperen todos los procesos secundarios actualmente activos y que el estado de retorno sea cero ". ¿Estoy en lo cierto en esta interpretación? ¿Es este un idioma común y / o útil?
Para un contexto agregado, estoy hablando del siguiente tipo de uso en el script:
for file in `ls *.txt ; wait &`
do
...
[cp instructions]
...
[mv instructions]
...
[mailx instruction]
done
fuente