verificar se programa está instalado....eu fiz assim [RESOLVIDO]

1. verificar se programa está instalado....eu fiz assim [RESOLVIDO]

jorge
katzer

(usa Ubuntu)

Enviado em 19/03/2012 - 11:04h

1) para verificar se hwinfo esta instalado fiz assim

instalado=$(aptitude show hwinfo | egrep 'Estado: instalado' | awk '{print $2}')

if [ $instalado == "instalado" ] 2> /dev/null; then
echo "hwinfo instalado"
else
echo "INSTALANDO O HWINFO"
aptitude install hwinfo
fi


2) Sempre que é feito o "scp" pela primeira vez ele pede senha, depois disso ele não pede mais, para verificar se tenho a chave instalada na maquina fiz assim.

echo "VERIFICANDO CHAVE"

ssh=$(ls -a /root |egrep ".ssh")

if [ -z $ssh ] 2> /dev/null; then
echo "Criando arquivo..."
ls > ls.txt
scp ls.txt auditor@10.24.208.169:/home/auditor
else
echo "Ok"
fi


POSSO FAZER ISSO DE UMA MANEIRA MELHOR?


  


2. MELHOR RESPOSTA

Perfil removido
removido

(usa Nenhuma)

Enviado em 20/03/2012 - 19:49h

katzer escreveu:

Obrigado Paulo, para chamar faço assim?

_programExists(hwinfo)

obrigado.


Não. Você deve incluir a função em seu script e a usar como um comando do shell.
Segue um exemplo de uso.

_programExists hwinfo &&
echo 'O programa hwinfo está instalado no seu sistema' ||
echo 'O programa não está instalado no seu sistema'

Boa sorte!!!

3. Re: verificar se programa está instalado....eu fiz assim [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 19/03/2012 - 12:02h

Para verificar se um programa está instalado você pode usar o comando which


function _programExists()
{
_PROGRAMA=$1
if [ ${#_PROGRAMA} -gt 2 ]
then
which ${_PROGRAMA} >> /dev/null
return $?
else
return 2
fi
}




4. verificar se programa está instalado....eu fiz assim

jorge
katzer

(usa Ubuntu)

Enviado em 19/03/2012 - 17:02h

Paulo, obrigado pelo apoio, pelo desculpas mas não entendi como fazer, já abusando de sua boa vontade, poderia ser mais específico. e para a questão da chave publica, como deveria fazer?

isso que fiz funciona, mas seria a melhor maneira?

echo "VERIFICANDO CHAVE PUBLICA"

ssh=$(ls -a /root |egrep ".ssh")

if [ -z $ssh ] 2> /dev/null; then
echo "Criando arquivo..."
ls > ls.txt
scp ls.txt auditor@10.24.208.169:/home/auditor
else
echo "Ok"
fi



5. Re: verificar se programa está instalado....eu fiz assim [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 20/03/2012 - 00:34h


A função acima é um procedimento padrão para verificar a existência do executável de um programa - parametro 1 - que funciona na maioria dos sistemas *nix, ao contrário do seu que usa um utilitário presente apenas em debians* like.

Ela retornará verdadeiro - signal 0 - caso seja encontrado o executável dentro do path do usuário logado. Caso contrário, obviamente, false - 2 - ou se o comprimento do primeiro parametro for menor que 2.

Boa Sorte!




6. verificar se programa está instalado....eu fiz assim

jorge
katzer

(usa Ubuntu)

Enviado em 20/03/2012 - 07:46h

Obrigado Paulo, para chamar faço assim?

_programExists(hwinfo)

obrigado.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts