Como estou atualizando esta postagem com base em comentários e outras respostas, os comentários anteriores a 22 de maio de 2020 podem não se aplicar mais.
O Bash não fornece uma sintaxe interna para comentários de várias linhas, mas há hacks usando a sintaxe do bash existente que "funcionam agora".
Pessoalmente, acho que o mais simples (ou seja, menos barulhento, menos estranho, mais fácil de digitar, mais explícito) é usar um HEREDOC citado, mas torne óbvio o que você está fazendo e use o mesmo marcador HEREDOC em todos os lugares:
<<'### BLOCK COMMENT'
line 1
line 2
line 3
line 4
### BLOCK COMMENT
A citação única do marcador HEREDOC evita alguns efeitos colaterais da análise de shell, como subsecções estranhas que causariam falha ou saída e até mesmo a análise do próprio marcador. Portanto, as aspas simples oferecem mais liberdade no marcador de comentário de abertura / fechamento. Por exemplo, o seguinte usa um hash triplo, que sugere um comentário de várias linhas no bash. Isso travaria o script se as aspas simples estivessem ausentes. Mesmo que você o remova ###
, FOO{}
ele travaria o script (ou causaria uma substituição incorreta, se não houver set -e
), se não fossem as aspas simples:
set -e
<<'### BLOCK COMMENT'
something something ${FOO{}} something
more comment
### BLOCK COMMENT
ls
Você poderia, é claro, apenas usar
set -e
<<'###'
something something ${FOO{}} something
more comment
###
ls
mas a intenção disso é definitivamente menos clara para um leitor não familiarizado com esse truque.
Atualmente, qualquer bom editor permite que você pressione ctrl- / ou similar, para desmarcar / comentar a seleção. Todo mundo definitivamente entende isso:
# something something ${FOO{}} something
# more comment
# yet another line of comment
embora seja certo que isso não seja tão conveniente quanto o comentário em bloco acima, se você quiser preencher novamente seus parágrafos.
Certamente existem outras técnicas, mas não parece haver uma maneira "convencional" de fazê-lo. Seria bom se ###>
e ###<
pudesse ser adicionado ao bash para indicar o início e o fim do bloco de comentários, parece que poderia ser bem direto.