Загортання довгих команд bash у файли сценаріїв


15

Як ви загортаєте довгу команду до наступного рядка у файлі скриптів bash?

Як простий приклад, я хочу запустити команду pushd . && cd /foo/bar && ls && popd

З консолі я можу це зробити:

pushd . \
&& cd /foo/bar \
&& ls \
&& popd

І це обертає лінію. Але той самий код у файлі сценарію створює помилку.

Як ви загортаєте ці рядки, щоб вони були добре відформатовані?

Відповіді:


16

Тут добре працює. Переконайтеся, що косої риски є останнім символом у рядку та що у файлі використовуються * nix рядки.


Тут чудово працює, але це також видаляє \ 'і & &' s взагалі та просто залишає команди на окремих рядках ...
Брайан Кінце

2
@elmugrat: Але тоді ви втрачаєте умовне прикування.
Ігнасіо Васкес-Абрамс

Ааа правда ... якось забув про це.
Брайан Кінце

2
ця проблема полягала в закінченні рядків, що пов'язано з тим, що я використовую cygwin у Windows, а не інша ОС. Спасибі.
Jen S.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.