shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Comentário em Bloco


From: Tiago Peczenyj
Subject: Re: [shell-script] Re: Comentário em Bloco
Date: Wed, 2 Nov 2011 01:28:22 -0200

andelnyr

analisando bem o seu problema devo dizer uma coisa: comentarios em bash que
não sejam feitos com o caracter # inicial podem ser perigosos.

por exemplo

: <<EOF

`comando malicioso 2>&-`

EOF

vai executar o comando malicioso e o resultado sera omitido da stdin!

e outras alternativas como colocar dentro de uma grande  "string" ou
subfuncao esbarram no problema do delimitador. se vc quiser colocar aspas
ou um } sozinho pode gerar um erro de parsing do script. desnecessário, uma
vez que é um comentário.

A unica forma segura de não ter surpresa com comentarios é iniciando com #
e editores de texto modernos podem inserir isso automagicamente se for o
caso (deve ter algum atalho do vim que faça isso, por exemplo).

Uma reflexão: Perl possui o recurso de POD (Plain old documentation format)
que não apenas cria uma documentação do codigo que pode ser visto como uma
man-page ou gerado html, pdf, etc como admite criar (algo como) blocos de
comentário via instrução =cut E este recurso ficaria otimo em um shell
script. Outras linguagens tem uma forma de adicionar marcações especiais e
de la extrair alguma coisa util (javadoc , rdoc, etc). Dei uma googleada
agora e encontrei isto:

http://bahut.alma.ch/2007/08/embedding-documentation-in-shell-script_16.html

Entretanto creio que pode ter os mesmos problema de segurança - como
colocar um $(rm -rf /) mas ja é alguma coisa. Dei mais uma googleada e
encontrei isto - parece promissor mas para ksh:

http://www.unixlabplus.com/unix-prog/shdoc/shdoc_article.html

Enfim, não encontrei nenhuma forma "canonica" de fazer o que não quer dizer
que não exista. Para mim documentar e comentarios em bloco são coisas de
certa forma relacionadas por isso trouxe a tona o POD mas poderia falar do
txt2tags, markdown ou outras linguagens de marcação


2011/10/31 andelnyr <address@hidden>

> **
>
>
> Tiago
>
> Agradeço a sua orientação e devo dizer que constatei que não tinha sido
> suficientemente insistente em encontrar alguma resposta semelhante no banco
> de mensagens da lista. Após a sua mensagem , encontrei uma outra bem antiga
> também sugerindo abordagens interessantes para esta requisição - comentar
> em bloco.
>
> Também encontrei uma outra solução fora da lista que também funciona e que
> nunca tinha ouvido falar:
>
> : ' <--- dois pontos, espaço e aspas simples - para iniciar o bloco
>
> ' <--- Aspas simples para fechar o bloco.
>
> Todas as sugestões foram testadas e funcionaram a contento.
>
> Grato
>
> Angelo Sampaio
>
> --- Em address@hidden, Tiago Peczenyj <tiago.peczenyj@...>
> escreveu
>
> >
> > Vc pode simular com here strings
> >
> > experimente fazer algo como
> >
> > echo 1
> > : <<EOF
> >
> > comentarios
> >
> > EOF
> >
> > echo 2
> >
> > 2011/10/30 andelnyr <andelnyr@...>
> >
> > > **
>
> > >
> > >
> > > Prezados
> > >
> > > Existe alguma forma de produzir comentários em um conjunto de linhas
> em um
> > > script, ao invés de colocar # no começo de todas as linhas?
> > >
> > > Eu desejo comentar trechos do código para testes, mas é bastante
> > > trabalhoso ficar colocando e depois tirando as #.
> > >
> > > Grato
> > >
> > >
> > >
> >
> >
> >
> > --
> > Tiago B. Peczenyj
> > Linux User #405772
> >
> > http://pacman.blog.br
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>  
>



-- 
Tiago B. Peczenyj
Linux User #405772

http://pacman.blog.br


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]