[Cascavel-pm] system

Luis Motta Campos luismottacampos em yahoo.co.uk
Quarta Novembro 29 02:44:43 PST 2006


Agnaldo Macedo wrote:
> Hoje eu uso uma linha semelgante a essa.
> 
> system ("$PROGRAMA", "$PARA1", "$PARAM2");
> 
> Como eu podeia fazer para não usar esses tais "meta-caracteres" ?

  Posso fazer umas perguntas?
  1. Você *precisa* *mesmo* que tudo isto esteja entre aspas duplas?
Afinal, não existe nada para interpolar aqui, e isto não é Bash...

  2. Você usa uma variável para passar o nome do programa, por que tem
mais de um programa sendo chamado por esta chamada de system(), ou
apenas para fazer firula? Sugestão:

  2.1. Se tem apenas um programa, use uma constante (pragma constant) ou
escreva o caminho completo para o seu programa no lugar da variável
$PROGRAMA. Isto vai facilitar a sua vida e a do Perl.
  2.2. Se você tem mais de um programa para chamar, construa uma
Dispatch Table e escreva explícitamente (conforme descrito em 2.1) cada
uma das suas chamadas para system().

  Ah! Dispatch Table: http://en.wikipedia.org/wiki/Dispatch_table

  Seja limpinho e organizado. O próximo programador que mantiver este
código agradece ;-)

  Putamplexos!
--
Luis Motta Campos
Senior System Engineer at Segula.FR
Hobbyist Cooker and Photograph


Mais detalhes sobre a lista de discussão Cascavel-pm