Je mets à jour ce message en fonction des commentaires et autres réponses, donc les commentaires avant le 22 mai 2020 peuvent ne plus s'appliquer.
Bash ne fournit pas de syntaxe intégrée pour les commentaires sur plusieurs lignes, mais il existe des hacks utilisant la syntaxe bash existante qui "fonctionnent maintenant".
Personnellement, je pense que le plus simple (c'est-à-dire le moins bruyant, le moins bizarre, le plus facile à taper, le plus explicite) est d'utiliser un HEREDOC cité, mais de rendre évident ce que vous faites, et d'utiliser le même marqueur HEREDOC partout:
<<'### BLOCK COMMENT'
line 1
line 2
line 3
line 4
### BLOCK COMMENT
Les guillemets simples du marqueur HEREDOC évitent certains effets secondaires d'analyse du shell, tels que des substitutions étranges qui provoqueraient un plantage ou une sortie, et même une analyse du marqueur lui-même. Ainsi, les guillemets simples vous donnent plus de liberté sur le marqueur de commentaire d'ouverture-fermeture. Par exemple, ce qui suit utilise un hachage triple qui suggère un commentaire sur plusieurs lignes dans bash. Cela ferait planter le script si les guillemets simples étaient absents. Même si vous supprimez ###
, le FOO{}
ferait planter le script (ou entraînerait une mauvaise substitution à imprimer si non set -e
) s'il n'y avait pas les guillemets simples:
set -e
<<'### BLOCK COMMENT'
something something ${FOO{}} something
more comment
### BLOCK COMMENT
ls
Vous pouvez bien sûr simplement utiliser
set -e
<<'###'
something something ${FOO{}} something
more comment
###
ls
mais l'intention de ceci est certainement moins claire pour un lecteur peu familier avec cette supercherie.
De nos jours, tout bon éditeur vous permet d'appuyer sur ctrl- / ou similaire, pour annuler / commenter la sélection. Tout le monde comprend certainement cela:
# something something ${FOO{}} something
# more comment
# yet another line of comment
même s'il est vrai que cela n'est pas aussi pratique que le commentaire de bloc ci-dessus si vous souhaitez remplir à nouveau vos paragraphes.
Il existe sûrement d'autres techniques, mais il ne semble pas y avoir de méthode «conventionnelle». Ce serait bien si ###>
et ###<
pouvait être ajouté à bash pour indiquer le début et la fin du bloc de commentaires, il semble que cela pourrait être assez simple.