Используя команду Read для хранения нескольких слов в одной переменной

Я интересуюсь хранением адреса в переменной, названной "адресом" с помощью read команда в сценарии Bash. Однако у меня есть проблема с несколькими словами, которые обычно имеет адрес. Существует ли способ сохранить несколько слов в одну переменную вместо всего один? Например:

echo "Please enter your address"
[user puts in 123 Fake street]
read address
echo $address
[output is just 123]
3
задан 9 January 2017 в 02:53

1 ответ

Обычно read address должен считать всю строку входа в переменную. Наиболее вероятная причина различного поведения в Вашем случае состоит в том, что IFS был изменен от его значения по умолчанию. При изменении строки на это она должна работать:

IFS= read -r address

И я предлагаю рассмотреть Ваш весь сценарий для мест, которые изменяют IFS, и, если возможно, стараются не изменять его.

4
ответ дан 1 December 2019 в 15:59

Другие вопросы по тегам:

Похожие вопросы: