Piszę skrypt instalacyjny, który będzie uruchamiany jako /bin/sh.
Jest wiersz z pytaniem o plik:
read -p "goat can try change directory if cd fails to do so. Would you like to add this feature? [Y|n] " REPLY
Chciałbym podzielić tę długą linię na wiele linii, aby żaden z nich nie przekraczał 80 znaków. Mówię o wierszach w kodzie źródłowym skryptu; nie chodzi o wiersze, które mają być faktycznie wydrukowane na ekranie podczas wykonywania skryptu!
Co próbowałem:
Pierwsze podejście:
read -p "goat can try change directory if cd fails to do so. " \ "Would you like to add this feature? [Y|n] " REPLYTo nie działa, ponieważ nie jest drukowane
Would you like to add this feature? [Y|n].Drugie podejście:
echo "goat can try change directory if cd fails to do so. " \ "Would you like to add this feature? [Y|n] " read REPLYNie działa tak dobrze. Drukuje znak nowej linii po znaku zachęty. Dodanie
-nopcji doechonie pomaga: po prostu drukuje:-n goat can try change directory if cd fails to do so. Would you like to add this feature? [Y|n] # empty line hereMoje obecne obejście to
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
i zastanawiam się, czy jest lepszy sposób.
Pamiętaj, że szukam /bin/shkompatybilnego rozwiązania.