Estoy actualizando esta publicación en función de los comentarios y otras respuestas, por lo que los comentarios anteriores al 22 de mayo de 2020 ya no se aplicarán.
Bash no proporciona una sintaxis integrada para comentarios de varias líneas, pero hay hacks que usan la sintaxis de bash existente que "funcionan ahora".
Personalmente, creo que lo más simple (es decir, menos ruidoso, menos extraño, más fácil de escribir, más explícito) es usar un HEREDOC citado, pero haz que sea obvio lo que estás haciendo y usa el mismo marcador HEREDOC en todas partes:
<<'### BLOCK COMMENT'
line 1
line 2
line 3
line 4
### BLOCK COMMENT
Las comillas simples del marcador HEREDOC evitan algunos efectos secundarios del análisis de shell, como las subvenciones extrañas que causarían un bloqueo o salida, e incluso el análisis del marcador en sí. Por lo tanto, las comillas simples le dan más libertad en el marcador de comentario de abrir-cerrar. Por ejemplo, a continuación se utiliza un hash triple que sugiere comentarios de varias líneas en bash. Esto bloquearía el script si las comillas simples estuvieran ausentes. Incluso si lo elimina ###
, FOO{}
se bloquearía el script (o causaría una mala sustitución si no set -e
fuera así) si no fuera por las comillas simples:
set -e
<<'### BLOCK COMMENT'
something something ${FOO{}} something
more comment
### BLOCK COMMENT
ls
Por supuesto, podrías usar
set -e
<<'###'
something something ${FOO{}} something
more comment
###
ls
pero la intención de esto es definitivamente menos clara para un lector que no esté familiarizado con este truco.
Hoy en día, cualquier buen editor le permite presionar ctrl- o similar, para des / comentar la selección. Todos definitivamente entienden esto:
# something something ${FOO{}} something
# more comment
# yet another line of comment
aunque es cierto, esto no es tan conveniente como el comentario del bloque anterior si desea volver a llenar sus párrafos.
Seguramente hay otras técnicas, pero no parece haber una forma "convencional" de hacerlo. Sería bueno si ###>
y ###<
podrían añadirse a bash para indicar comienzo y al final del bloque de comentarios, parece que podría ser bastante sencillo.