Я пишу інсталяційний сценарій, який буде виконуватися як /bin/sh
.
Існує рядок із запитом на файл:
read -p "goat can try change directory if cd fails to do so. Would you like to add this feature? [Y|n] " REPLY
Я хотів би розбити цей довгий рядок на багато рядків, щоб жоден з них не перевищував 80 символів. Я говорю про рядки у вихідному коді сценарію; не про рядки, які мають бути насправді надруковані на екрані при виконанні сценарію!
Що я спробував:
Перший підхід:
read -p "goat can try change directory if cd fails to do so. " \ "Would you like to add this feature? [Y|n] " REPLY
Це не працює, оскільки не друкується
Would you like to add this feature? [Y|n]
.Другий підхід:
echo "goat can try change directory if cd fails to do so. " \ "Would you like to add this feature? [Y|n] " read REPLY
Не працює також. Він друкує новий рядок після підказки. Додавання
-n
опціїecho
не допомагає: вона просто друкує:-n goat can try change directory if cd fails to do so. Would you like to add this feature? [Y|n] # empty line here
Моє поточне вирішення
printf '%s %s ' \ "goat can try change directory if cd fails to do so." \ "Would you like to add this feature? [Y|n] " read REPLY
і мені цікаво, чи є кращий спосіб.
Пам'ятайте, що я шукаю /bin/sh
сумісне рішення.