Avvolgimento di comandi bash lunghi nei file di script


15

Come si avvolge un comando lungo alla riga successiva all'interno di un file di script bash?

Come semplice esempio, voglio eseguire il comando pushd . && cd /foo/bar && ls && popd

Dalla console posso fare questo:

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

E questo avvolge la linea. Ma lo stesso codice in un file di script produce un errore.

Come si avvolgono queste righe per essere formattate correttamente?

Risposte:


16

Funziona bene qui. Assicurarsi che la barra rovesciata sia l'ultimo carattere sulla riga e che il file utilizzi le terminazioni di riga * nix.


Funziona bene anche qui, ma anche la rimozione di \ 'e &&' del tutto e lasciando i comandi su linee separate ...
Brian Kintz,

2
@elmugrat: Ma poi perdi il concatenamento condizionale.
Ignacio Vazquez-Abrams,

Ahhh vero ... in qualche modo se ne è dimenticato.
Brian Kintz,

2
questo problema era la fine della linea, che è dovuto al fatto che sto usando Cygwin su Windows e non un diverso sistema operativo. Grazie.
Jen S.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.