Ось кілька інших способів створення багаторядкового файлу за допомогою echo
команди:
echo "first line" > foo
echo "second line" >> foo
echo "third line" >> foo
де друга і третя команди використовують >>
оператор перенаправлення, що призводить до того, що висновок команди додається (додається) до файлу (який уже повинен існувати до цього моменту).
Або
(echo "first line"; echo "second line"; echo "third line") > foo
де круглі дужки групують echo
команди в один підпроцес, який виглядає і діє як будь-яка єдина програма, яка виводить кілька рядків (як ls
, наприклад).
Тонка варіація вищезазначеного є
{ echo "first line"; echo "second line"; echo "third line";} > foo
Це трохи ефективніше, ніж друга відповідь, оскільки це не створює підпроцесу. Однак синтаксис трохи складніший: зауважте, що ви повинні мати пробіл після {
та крапку з комою перед }
.
Дивіться, що таке оператори управління та перенаправлення оболонки? для отримання додаткової інформації.