Como comentar linhas particulares em um script shell
alguém pode sugerir como comentar linhas particulares no script shell que não {[[0]}?
Acho que quero comentar cinco linhas. Em vez de adicionar {[[0]} a cada linha, existe alguma outra maneira de comentar as cinco linhas?3 answers
Você pode comentar a secção de um script usando um condicional.
Por exemplo, o seguinte guião:
DEBUG=false
if ${DEBUG}; then
echo 1
echo 2
echo 3
echo 4
echo 5
fi
echo 6
echo 7
Daria resultado:
6
7
A fim de descomentar a secção do Código, basta comentar a variável:
#DEBUG=false
(fazer isso imprimiria os números 1 a 7.)
Sim (embora seja uma invasão desagradável). Você pode usar um heredoc Assim:
#!/bin/sh
# do valuable stuff here
touch /tmp/a
# now comment out all the stuff below up to the EOF
echo <<EOF
...
...
...
EOF
O que está isto a fazer ? A heredoc
envia todas as seguintes entradas para o terminador (neste caso, EOF) para o comando indicado. Então você pode cercar o código que deseja comentar com
echo <<EOF
...
EOF
E vai ser preciso todo o código contido entre os dois telhados e alimentá-los.echo
(echo
não lê de stdin para que tudo seja jogado fora).
Note que com o acima você pode colocar qualquer coisa no heredoc
. Não tem que ser um código de shell válido (ou seja, não tem que processar corretamente).
/* ... */
Você tem que confiar em ' # ' mas para tornar a tarefa mais fácil em vi você pode executar o seguinte:
:10,20 s/^/#
Com 10 e 20 sendo os números de linha inicial e final das linhas que você quer comentar
E desfazer quando estiver completo:
:10,20 s/^#//