Usando o comando Ler para armazenar várias palavras em uma variável

3

Estou interessado em armazenar um endereço em uma variável chamada "endereço" usando o comando read em um script Bash. No entanto, estou tendo um problema com as várias palavras que um endereço normalmente possui. Existe uma maneira de armazenar várias palavras em uma variável em vez de apenas uma? Por exemplo:

echo "Please enter your address"
[user puts in 123 Fake street]
read address
echo $address
[output is just 123]
    
por Justin 03.12.2014 / 20:26

1 resposta

4

Normalmente, read address deve ler toda a linha de entrada na variável. A causa mais provável do comportamento diferente no seu caso é que IFS foi alterado de seu valor padrão. Se você mudar a linha para isso, deve funcionar:

IFS= read -r address

E sugiro que você revise todo o seu script para lugares que alteram IFS , e, se possível, evite alterá-lo.

    
por janos 28.12.2014 / 13:23

Tags