O uso de comentários é uma pratica muito usada e deve ser usada mesmo :{ para ajudar o próximo a ler ou dar manutenção em seu código.
Assim como em C, C++, C#, Java, Perl, Python, Lua, PHP e N linguagens em Shell Script não é diferente.
É sempre comum encontrarmos este tipo de comentário em um script shell.
$ head -n 10 /etc/init.d/cron #!/bin/sh -e # upstart-job # # Symlink target for initscripts that have been converted to Upstart. set -e UPSTART_JOB_CONF="/etc/default/upstart-job" INITSCRIPT="$(basename "$0")" JOB="${INITSCRIPT%.sh}"
Listei apenas as 10 primeiras linhas do /etc/init.d/cron e é muito comum o uso do #, porém as vezes você necessita de comentar mais de uma linha, depende o caso 5 ou até 10 linhas e é normal usar 5 ou 10 # no inicio.
Vamos a um exemplo bem prático e rápido para ver uma maneira de comentar um bloco em shell script.
$ cat comentarios.sh #! /bin/bash # Comentario de uma linha, setando o PATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin <<INICIO Este script deve listar os diretórios em /home e exibir apenas os nomes em ordem alfabética. INICIO echo -e "\n# Comentario 1" /bin/ls -1SX /home/ : ' -*- Outra forma de escrever comentário em blocos -*- Diretório completo para chegar no nosso script ' echo -e "\n# Comentario 2" /usr/bin/dirname $0 $ ./comentarios.sh # Comentario 1 botscan cleiton pi # Comentario 2 . $
O mais comum é usando <<STRING <COMENTÁRIO> STRING, no caso usei INICIO e o que estiver entre as duas strings INICIO é um comentário em bloco.
Outra maneira bem menos popular é usar : ‘ <COMENTÁRIO> ‘, um detalhe importante é, com o : ‘ ‘ o comentário pode estar na mesma linha e terminar com ‘, já com <<STRING a palavra STRING deve ser terminada na próxima linha.
Foi um post curto e bem direto, porém, creio que seja de grande utilidade. Conhece alguma outra forma de comentar em bloco no shell script?
Espero que tenham gostado, até a próxima!
Shell Script – Comentários by Cleiton Bueno is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.