Todo lo que debe hacer es agregar "\" al final de cada línea y debería estar listo.
Entonces el tuyo se verá así:
tar -cvpzf /share/Recovery/Snapshots/$(hostname)_$(date +%Y%m%d).tar.gz \
--exclude=/proc \
--exclude=/lost+found \
--exclude=/sys \
--exclude=/mnt \
--exclude=/media \
--exclude=/dev \
--exclude=/share/Archive \
/
Algunos atajos
(basado en la actualización de su comentario para configurar $HOSTNAME)
$HOSTNAME
Dos opciones para configurar eso:
-
Establecer NOMBRE DE HOST
HOSTNAME=$(nombre de host)
-
Utilice la sustitución de comandos (por ejemplo,
$(command)
)Entonces se vería como arriba. Eso solo hace que el comando se ejecute antes de usarlo.
$DATE
Otra variable evitada sería fácilmente:
$(hostname)_$(date +%Y%m%d).tar.gz \
$ man date
tendrá los formatos para las opciones de fecha, el anterior es AAAAmmdd
Use la barra invertida para continuar un comando en la siguiente línea:
tar -cvpzf /share/Recovery/Snapshots/$HOSTNAME_$DATE.tar.gz \
--exclude=/proc \
--exclude=/lost+found \
--exclude=/sys \
--exclude=/mnt \
--exclude=/media \
--exclude=/dev \
--exclude=/share/Archive \
/
El mismo comando, pero con comentarios para cada línea, sería:
tar -cvpzf /share/Recovery/Snapshots/$(hostname)_$(date +%Y%m%d).tar.gz `#first comment` \
--exclude=/proc `#second comment` \
--exclude=/lost+found `# and so on...` \
--exclude=/sys \
--exclude=/mnt \
--exclude=/media \
--exclude=/dev \
--exclude=/share/Archive \
/