El caso es que estoy intentando implementar un script que se meta en un bucle y que no salga hasta que una serie de scripts no hayan terminado su ejecución. De momento, he implementado lo siguiente (que por cierto, no funciona para nada):
Using perl Syntax Highlighting
#en $file_name tengo el path y el nombre del fichero a crear
open (F,">$flagFile") || die "ERROR: can't open $flagFile";
print STDOUT "Suspend all jobs: Flag File Created\n";
while (@processList = grep(/^Colorao/, 'ps -a'))
{
print F "FqStats Processes turning:\n";
print F @processList."\n";
}
close(F);
print STDOUT "There are no more Colorao processes currently running\n";
open (F,">$flagFile") || die "ERROR: can't open $flagFile";
print STDOUT "Suspend all jobs: Flag File Created\n";
while (@processList = grep(/^Colorao/, 'ps -a'))
{
print F "FqStats Processes turning:\n";
print F @processList."\n";
}
close(F);
print STDOUT "There are no more Colorao processes currently running\n";
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4
El caso es que la condición dentro del while parece no funcionar. Lo que quiero hacer es que mientras haya procesos (scripts) Perl ejecutándose cuyo nombre empiece por "Colorao", pues que no salga del bucle, y de paso, escribir dicha lista de procesos en un fichero (esto último es opcional).
¿Alguien podría echarme una manita con la condición del bucle?
¿Cómo guardar el resultado del ps dentro de un array? ¿Qué es mejor, guardarlo en un array o en un hash?
¡¡Muchas gracias!!
Felipe