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

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

Re: [shell-script] Re: Variáveis em caixa alta x caixa baixa (era Qual a


From: Tiago Peczenyj
Subject: Re: [shell-script] Re: Variáveis em caixa alta x caixa baixa (era Qual a forma mais eficiente para recuperar campos de um arquivo de texto?)
Date: Tue, 4 May 2010 10:24:56 -0300

Apenas para colaborar,

Ate hoje eu vi apenas um caso de variavel de ambiente que foi mal utilizada
em um script, que foi justamente uma subfunção que sobreescrevia o PATH (era
uma url que era quebrada em varias partes, DOMAIN, QUERY e... PATH) e logo
depois tentava executar algum programa (o java, se nao me engano). Mas isto
atrapalhou o proprio funcionamento do script, manteve o ambiente intacto.

É mais facil executar um rm -rf no diretorio .. e descobrir como é bom ter
backup

2010/5/3 MrBiTs <address@hidden>

>
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> > Sobre as variáveis agora eu fiquei na dúvida pois eu sempre as usava em
> > caixa alta, até que fiz o Curso de Shell com o Júlio e ele indicou que
> > deveríamos usar capitalizadas pois as variáveis de ambiente são por
> > default em caixa alta.
> >
> > Fiz alguns testes e constatei que não existe perigo de eu alterar uma
> > variável de ambiente de dentro de um script apenas atribuindo valores a
> > ela, ela só realmente muda o valor da variável de ambiente se eu usar o
> > export $VAR, porém se eu tentar ler uma variável que ainda não tenha
> > algum valor atribuído e que possua o mesmo nome da uma variável de
> > ambiante, eu receberei o valor dessa variável de ambiente, também,
> > depois de atribuir um valor a uma variável com o mesmo nome de uma
> > variável de ambiente eu não posso mais recuperar o valor da variável de
> > ambiente.
> > Que confusão...
> > Bom, concordo 100% que é muito melhor para visualizar no código as
> > variáveis em caixa alta, então será que uma melhor opção não seria usar
> > as variáveis em caixa alta mas com um _ no início? tipo $_USER $_NAME
> > $_STATUS ?
>
> Deixa eu me meter. As razões do Júlio são ótimas, concordo com todas elas,
> e tenho certeza que várias pessoas passam por esse
> problema, de acessar uma variável de sistema e zonear o resultado do
> programa. O primeiro cuidado aqui seria conhecer quais são as
> variáveis de sistema, mas algumas vezes acho que pedir para as pessoas
> conhecerem o ambiente em que vão trabalhar é pedir demais,
> nos dias conturbados onde velocidade é o que interessa, qualidade não tem
> pressa, que vivemos. Eu posso te dizer que nesses 24 anos
> de Unix eu NUNCA acessei indevidamente uma variável de sistema. Todas as
> minhas variáveis são inicializadas, mesmo que a linguagem
> seja de tipagem fraca. Então, ao invés de usar essa coisa feia o _ na
> frente das variáveis, conheça as do seu SO e inicialize-as
> todas nos seus programas.
> Quanto a definir uma variável com o mesmo nome de uma variável de sistema
> que depois necessitará ser acessada no programa, isso é
> falha de projeto, coisa de quem não sabe programar. Se você é daqueles que
> sai rabiscando código ao invés de PENSAR seu programa e
> prever tudo o que será utilizado nele, pode ter esses problemas. Se você é
> um programador sério, isso não vai te acontecer.
>
> - --
>
> Um abraço
>
> .0. MrBiTs - address@hidden <mrbits.dcf%40gmail.com>
> ..0 GnuPG -
> http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x6EC818FC2B3CA5AB
> 000 http://www.mrbits.com.br
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
>
> iQEcBAEBCAAGBQJL32qmAAoJEG7IGPwrPKWrbMsIAKTmNSjJ6XtCktdF9Tz/aPDR
> f2coI0qMJjVpu+5VBPV4SxLSGmY7MqyvGkosIEZf8dn+ihu1/LRc8rcIxZ6/kXeC
> hgbtBH/KnPBU4X0zBXZoIifH07a7ezOlRQn4HXHN12vCSwx/oDda2rAPWTWdT9ok
> E3Y3440cwVqhnOgFTN04sVkO+uhJimX8T5IaW8pwHdwWzb0jL052E8MWrJirrBmT
> 5S3CwxCpeSKI+QWWgMdwQNkKrrmqw5vNzWftTLHGYfl7PDsHDGl6oFfuaP6ecNe8
> v9GbRcA6x65OF2MnNA6QDzD7q6ehG/5s1dfSurLPWoC8RZRWu2sELPI2conOe9w=
> =+L2G
> -----END PGP SIGNATURE-----
>  
>



-- 
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]