Tengo el siguiente comando que ejecuto desde un script. En el archivo de script está escrito en esta fila algo larga:
sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html -x /var/www/html/wp-content/cache
Hasta ahora todo bien, pero quiero dividir este comando en algunas partes.horizontalmente, como:
sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html || -x /var/www/html/wp-content/cache
¿De dónde ||
deberían venir los caracteres no ejecutados que se utilizarán sólo para dividir "estéticamente" el comando en dos partes?
O tal vez incluso verticalmente como:
sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html
-x /var/www/html/wp-content/cache
¿Cuál dirás que es la mejor manera de lograrlo?
Respuesta1
Si entiendo correctamente lo que estás tratando de lograr, deberías usar \
. Esto permite dividir comandos largos en varias líneas.
sudo zip -r \
/var/www/html/html-$(date +\%F-\%T-).zip \
/var/www/html \
-x /var/www/html/wp-content/cache
Tenga en cuenta que los espacios antes de las barras son importantes. Los shells no los insertan automáticamente, por lo que comandos como
echo\
"asdf"
probablemente resultará en un "comando no encontrado" (@ilkkachu).