Compare Preços no Buscape e no BondFaro
BuscaPé, líder em comparação de preços na América Latina

Asus Eee PC 0.9 Ghz
512Mb Ram - 4Gb HD

Senhora
José de Alencar

Sony Cyber-shot S730
7.2 Megapixels

Trilogia Star Wars

CD Awake
Dream Theater

Receptor TV ( USB )

Patinho Faminto
www.patinho.net

Apostilas
Expr Regular
Remasterização
SED
Shell Script

Distros
Dizinha
Patinho Faminto

Nerd
Desejo Nerd
Shell Scripts

Artístico
Livro
Musica
Poesias
Tirinhas

Bobagens
Ascii Art
Games Antigos
Porque Amar Nerds
Porque Não Amar Nerds

Eu
About Me
Recomendo
Contato
DOAÇÕES

Amigos
Aurélio
Jogos Antigos
NeoDizinha
Nerds Nervosos
ProibidoParaNormais


* = Recentemente Atualizado



website stats
Locations of visitors to this page

Anúncio provido pelo BuscaPé
BuscaPé, líder em comparação de preços na América Latina

Ver Indice Geral da Apostila de Shell Script

Comando READ

O comando READ pega o que o usuário digita no computador e passa para um variável.
READ é usado da seguinte forma:
read nome_da_variavel

Exemplo:
read_exemplo.sh

echo "Qual seu nome?"
read nome
echo "Olá $nome! Prazer em conhecê-lo"
Mostrará na tela
Qual seu nome?
Ludwig(dado digitado pelo usuário)
Olá Ludwig! Prazer em conhecê-lo

 
 

Aplicação Prática:

Vamos refazer o script que dá a área do Quadrado Usando o valor que o usuário der para o lado do quadrado e verificando se o valor digitado é maior que 0, pois não existe quadrado com lado 0.

area_quadrado.sh

echo "Qual o tamanho do lado do quadrado?"
read lado
        if [ $lado -gt 0 ]
        then
        echo "A área do quadrado é $(($lado**2)) e o perímetro é $(($lado*4))"
        else
        echo "Um quadrado precisa ter lado maior que 0 ;)"
        fi

 
 

Para tornar o código mais simples, o próprio READ tem a opção de escrever algo na tela, para informar ao usuário o que ele deve digitar
Nesse caso o comando READ é usado da seguinte forma:

read -p "texto que aparecerá na tela" variavel

Veja um exemplo:
read_exemplo2.sh

read -p "Seu nome:" nome
echo "Olá $nome"
Mostrará na tela
Seu nome: E o texto digitado pelo usuário.
Olá "texto digitado pelo usuário"

 
 

Pegando 2 ou mais variáveis com o READ

Imagine fazer um script que pega os lados de um retângulo e dá o perímetro.
Com o conhecimento que tem até agora o script que faria seria:

perimetro_ret1.sh

echo "Dê o valor da base do retângulo"
read base

echo "Dê o valor da altura do retângulo"
read altura

echo "O perímetro do retângulo é $((($base+$altura)*2))"

 

Seria mais prático pedir para usuário digitar "base" "altura" e já calcular o valor
Veja só:

perimetro_ret2.sh

echo "Dê o valor da base e da altura do retângulo"
read base altura

echo "O perímetro do retângulo é $((($base+$altura)*2))"

Basta digitar o valor da base e da altura com um espaço entre os valores, exemplo:
10 5
O READ guarda o primeiro valor ( no nosso exemplo 10 ) na variável "base" e guarda segundo valor ( no nosso exemplo 5 ) na variável "altura"

Você pode usar quantas variáveis desejar com o comando READ

 

Mas e se eu tiver 2 variáveis e o usuário escrever 3 palavras?
Nesse caso a primeira palavra é armazenada na primeira variável e as palavras restantes na segunda variável
Veja um exemplo:

nome.sh
echo "Digite seu Nome e Sobrenome"
read nome sobrenome

echo "Seu nome é: $nome"
echo "Seu sobrenome é: $sobrenome"
Mostrará na tela
Se o usuário digitar:
Ludwig Sandman Starr
Aparecerá:

Seu nome é: Ludwig
Seu sobrenome é: Sandman Starr

 
 

Nota: 10

Votar:
Postado em: 2008-03-26

Ver Indice Geral da Apostila de Shell Script

Doações
Se quer nos ajudar, pode doar pelo PagSeguro

Ou pode doar pelo Paypal clicando no botão DONATE

Compare Produtos, Lojas e Preços


As poesias devem virar um livro impresso?
Claro
Só se tiver menos de 60 páginas
Só se tiver entre 60 e 120 páginas
Só se tiver mais que 120 páginas
Só vou comprar se for barato
Só vou comprar para você ficar feliz
Livro? Que Livro? Que poesia?
Resultado