Executando o arquivo .sh CentOS6

3

Eu tenho um script para instalar um programa.

https://github.com/mkonecny/airtime_centos/blob/master/centos.sh

Quando tento executá-lo, obtenho:

64-bit installer only
LANG=en_US.UTF-8
install/uninstall parameter required

Eu tentei chmod . Eu tentei sudo ./centos.sh

Estou sentindo falta de algo?

    
por Trance84 12.08.2012 / 23:23

2 respostas

3

Você está, de fato, executando o script com sucesso. O que você está vendo é a saída do script.

64 bit installer only

de

mach='uname -m'
if [[ "$mach" != "x86_64" ]]; then
    echo "64-bit installer only"
fi

Isso está lhe dizendo que o script do instalador destina-se apenas a ser executado em hardware x86_64 (PC de 64 bits) e seu computador está usando uma arquitetura de processador diferente (seu sistema operacional é provavelmente de 32 bits)

Neste ponto, o script deve ser encerrado logicamente, mas o criador de scripts esqueceu de colocar isso, e o script simplesmente é executado.

LANG=en_US.UTF-8

Esta é a saída de

locale | grep "LANG" | grep -i "UTF.*8"

O script usa isso para verificar se seu sistema usa unicode. Na minha opinião, o scripter está sendo desleixado aqui novamente e deveria ter suprimido a saída dessa linha.

Finalmente,

install/uninstall parameter required

é da última parte do script:

if [[ "$1" == "install" ]]; then
    install
elif [[ "$1" == "uninstall" ]]; then
    uninstall
else
    echo "install/uninstall parameter required"
fi

O script está tentando dizer que você deve executá-lo assim:

./airtime_centos.sh install

ou, para desinstalar,

./airtime_centos.sh uninstall

No entanto, isso provavelmente não funcionará como esperado, pois o script tentará instalar pacotes de 64 bits em seu sistema de 32 bits.

    
por 12.08.2012 / 23:34
1

Tente entrar no root
então digite

 bash   file_path/yourfile.sh  

...

    
por 02.06.2013 / 15:35