shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Verificar executar em bg


From: Enio
Subject: Verificar executar em bg
Date: Sun, 07 Nov 2010 16:24:21 -0000
User-agent: eGroups-EW/0.82

Olá.

Fiz o seguinte script:

#!/bin/bash
rm -rf relatorio
dire=`ls ./programas`
for prog in $dire; do
"$prog &"
echo "$prog" "$?" >> relatorio
kill -9 $!
done

a intenção é iniciar cada programa desse diretório, capturar o código de erro 
apresentado e matá-lo.
O problema é que quando o programa inicia sem erros, ele entra em execução e 
não é possível finalizá-lo, para isso eu usei o & que faz o programa executar 
em bg, porém, no script, os programas entendem que o & é uma opção e retornam 
que essa opção não existe. O mesmo não acontece se eu for direto no terminal e 
usar "programa &", onde o programa iniciará o processo em bg.
Por exemplo:

Executando diretamente no terminal:
gnome-calculator &
[1] 3155

Executando através do script:
+ for prog in '$dire'
+ 'gnome-calculator &'
testa_apps.sh: linha 5: gnome-calculator &: comando não encontrado
+ echo gnome-calculator 127

Já tentei a execução do programa sem o uso das aspas - $prog & -, mas ele 
sempre retorna 0 quando na verdade o programa (que não é a calculadora do 
exemplo) está apresentando o código de erro 139.

Obrigado.

Abs,
Enio Onodera



reply via email to

[Prev in Thread] Current Thread [Next in Thread]