Envolviendo comandos bash largos en archivos de script


15

¿Cómo se ajusta un comando largo a la siguiente línea dentro de un archivo de script bash?

Como ejemplo simple, quiero ejecutar el comando pushd . && cd /foo/bar && ls && popd

Desde la consola puedo hacer esto:

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

Y eso envuelve la línea. Pero el mismo código en un archivo de script produce un error.

¿Cómo se ajustan estas líneas para que tengan un formato agradable?

Respuestas:


16

Funciona bien aquí. Asegúrese de que la barra diagonal inversa sea el último carácter de la línea y que el archivo utilice las terminaciones de línea * nix.


Funciona bien aquí también, pero también lo hace eliminar los \ 'sy &&' por completo y solo dejar los comandos en líneas separadas ...
Brian Kintz

2
@elmugrat: Pero luego pierdes el encadenamiento condicional.
Ignacio Vazquez-Abrams

Ahhh cierto ... de alguna manera se olvidó de eso.
Brian Kintz

2
Este problema fue el final de línea, que se debe al hecho de que estoy usando cygwin en Windows y no en un sistema operativo diferente. Gracias.
Jen S.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.