Como verificar programaticamente se o getopts está instalado? Se não, instale-o [duplicado]

0

Executando o Ubuntu 16.04 Eu quero instalar (programaticamente) getopts se não estiver instalado.

Depois disso post eu estou fazendo algo assim:

GETOPTS=getopts

if [$GETOPTS==""] 
   then
   echo "Installing getopts"
   sudo apt-get install -y libperl4-corelibs-perl
fi

Mas não está funcionando.

Alguma ideia de como fazer isso?

    
por zwitterion 11.03.2018 / 13:38

1 resposta

1

Quando você quiser verificar se alguma ferramenta iniciada na linha de comando está instalada, a seguinte linha funcionará:

if [ "'which someCommand'" = "" ]

O comando which verifica o nome completo do arquivo do executável de someCommand e, se o arquivo for não , o corpo da instrução if é executado.

No entanto, isso pressupõe que someCommand seja um comando que você pode iniciar a partir da linha de comando (terminal etc.).

No seu caso, você provavelmente quer verificar se o arquivo /usr/share/perl5/getopts.pl existe.

De acordo com pergunta isso pode ser feito usando a seguinte verificação:

if [ ! -f /usr/share/perl5/getopts.pl ]

Esta declaração irá verificar se algum arquivo não existe ...

    
por Martin Rosenau 11.03.2018 / 13:59