Selecione uma opção em um script ao chamar o script

2

Eu quero selecionar as opções para este script via linha de comando.

Por exemplo, eu quero escolher a opção 2, mas isso requer inserir o número e pressionar Enter . Tentei inserir ./install.sh < 2 , mas recebi o erro Invalid selection. Installation aborted. .

Como posso fazer isso corretamente?

    
por Abdulkader Alrazj 15.09.2017 / 10:47

1 resposta

1

Ambas as soluções funcionam:

./install.sh <<< 2
echo 2 | ./install.sh

Para várias opções, use, por exemplo:

echo -e "2\n3\n1" | ./install.sh

No seu caso, isso seria:

echo -ne "2\n1\n/var/www/html\nlocalhost\nradius\nradius123\nlocalhost\nconntrack\nconn123\nroot\nwww-data\ny\ny\ny\ny" | ./install.sh

Se você usar esta maneira de inserir opções, é crucial que você especifique todas as opções necessárias, não funcionará (dessa forma) apenas especificar as duas primeiras e deixar as outras abertas para o usuário para escolher.

Mais sobre as strings aqui ( <<< ) podem ser encontradas em tldp.org e Linha de comando: & lt; & lt; & lt; em vez de & lt; & lt; .

    
por dessert 15.09.2017 / 11:39