Neste tópico, aprenderemos como ler a entrada do usuário no terminal e no script.
Para ler a entrada do usuário Bash, usamos o comando Bash integrado chamado ler . Ele recebe a entrada do usuário e a atribui à variável. Ele lê apenas uma única linha do shell Bash. Abaixo está a sintaxe para sua implementação.
Sintaxe
read
Siga os exemplos fornecidos para ler a entrada do usuário no script Bash:
Exemplo 1:
Neste exemplo, lemos variáveis únicas e múltiplas do Bash Script usando o comando read.
Programa:
#!/bin/bash # Read the user input echo 'Enter the user name: ' read first_name echo 'The Current User Name is $first_name' echo echo 'Enter other users'names: ' read name1 name2 name3 echo '$name1, $name2, $name3 are the other users.'
Veja o console Bash:
Saída:
O que acontecerá se não passarmos nenhuma variável com o comando read?
Se não passarmos nenhuma variável com o comando read, então podemos passar uma variável interna chamada RESPONDER (deve ser prefixado com o sinal $) ao exibir a entrada. Isso pode ser explicado usando o programa abaixo:
algoritmo de Kruskal
Programa:
#!/bin/bash # using read command without any variable echo 'Enter name : ' read echo 'Name : $REPLY'
No console Bash:
Saída:
Exemplo 2:
Neste exemplo, inserimos a entrada no mesmo PROMPT usando o comando -p opção de linha de comando do seguinte modo:
read -p PROMPT
Programa:
#!/bin/bash read -p 'username:' user_var echo 'The username is: ' $user_var
Veja o console Bash:
Saída:
Exemplo 3:
Este exemplo é para manter a entrada no modo silencioso, de modo que qualquer entrada do usuário na linha de comando fique oculta para outros.
mesa de látex
Portanto, passamos um nome de usuário e ocultamos a senha (modo silencioso) usando as opções de linha de comando (-s, -p) normalmente da seguinte forma:
read -sp PROMPT
Onde -s permite que um usuário mantenha a entrada no modo silencioso e -p para inserir no novo prompt de comando.
jogos de mensagens com android
Programa:
#!/bin/bash read -p 'username : ' user_var read -sp 'password : ' pass_var echo echo 'username : ' $user_var echo 'password : ' $pass_var
Veja o console Bash:
Saída:
NOTA: No 5ºlinha do script, demos uma linha em branco com o comando echo, pois se não deixarmos em branco então, ele dará saída com a senha e o nome de usuário no mesmo PROMPT da imagem abaixo.
Portanto, escreva seu script adicionando uma linha de comando de eco em branco.
Exemplo 4: Este exemplo é para inserir várias entradas usando uma matriz. Portanto, use a opção de linha de comando -a da seguinte maneira:
read -a
Onde -a ajuda o script a ler uma matriz e nome_da_variável refere-se a uma matriz.
Programa:
#!/bin/bash # Reading multiple inputs using an array echo 'Enter names : ' read -a names echo 'The entered names are : ${names[0]}, ${names[1]}.'
Veja o código no Bash Console:
Saída: