<div>"Meu caro, teu caso é quase de camisa-de-força e umas férias de uns 5<br>anos no manicômio mais próximo ;) , mas eu vou tentar te colocar na<br>linha. Vamos aos comentários..." </div>
<div> </div>
<div>Você é um idiota! </div>
<div> </div>
<div>"Erro de conceito: nunca use permissões "777". Você não sabe o que<br>está fazendo."</div>
<div> </div>
<div>Se estou setando as permissões para "777" é porque preciso que elas estejam dessa forma.. EU SEI O QUE ESTOU FAZENDO. </div>
<div> </div>
<div>Já resolvi o meu problema, mas obrigado pela sua imensa ajuda... </div>
<div><br><br> </div>
<div><span class="gmail_quote">Em 18/01/08, <b class="gmail_sendername">Luis Motta Campos</b> <<a href="mailto:luismottacampos@yahoo.co.uk">luismottacampos@yahoo.co.uk</a>> escreveu:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Rafael Lebrao Martins wrote:<br>> Bom dia, pessoal. Estou com um problema, a função system não está<br>
> funcionando nos meus códigos.. Coloquei em um código a linha abaixo:<br>><br>> system (`chmod 777 -R /var/imm/chats`);<br><br>AAAAAAHHHHH!!!!<br><br>> Mas quando acesso a o caminho "/var/imm/chats", as permissões
<br>> continuam as mesmas... Alguém pode me ajudar?<br><br>Meu caro, teu caso é quase de camisa-de-força e umas férias de uns 5<br>anos no manicômio mais próximo ;) , mas eu vou tentar te colocar na<br>linha. Vamos aos comentários...
<br><br>1. Permissões:<br><br>Certifique-se de que você pode executar o mesmo comando, com o mesmo<br>usuário, à mão.<br><br>Me envie o resultado de "ls -l /var/imm/chats"<br><br>2. Onde está o teu código? Eu vejo montes de erros nesta linha. Tantos
<br>que meus olhos estão até ardendo... :(<br><br>2.1. Erro de conceito: nunca use permissões "777". Você não sabe o que<br>está fazendo.<br>2.2. Erro de programação: backticks (ou "crase") são operadores no perl.
<br>Nunca use para quotar strings no programa. Se você não sabe para que<br>serve, não use - é perigoso.<br>2.3. Se você está construindo um programa, pretende rodar isso com<br>frequência. Isso é um erro de conceito, você deveria configurar seus
<br>programas e sistema para permitir acesso apenas aos sistemas / programas<br>que precisam de acesso, não construir um programa para abrir acesso<br>irrestrito para alguma coisa.<br>2.4. usar "system()" sem conferir erros.
<br>2.5. usar o operador de execução no shell (qx//, ou "`" - veja "perlop",<br>secção "Regexp Quote-Like Operators") e passar o resultado para um<br>"system()" - ou você é ninja, e podia estar me ensinando alguma coisa,
<br>ou você não faz idéia do que está fazendo. CUIDADO!<br><br>3. Sugestão: RTFM, e implementa mais ou menos assim, que deve ser<br>seguro. ATENÇÃO: eu não testei isso, use por sua conta e risco.<br><br>#!/usr/bin/perl<br>
use warnings;<br>use strict;<br><br>my @args = ( q{/usr/bin/chmod}, q{0777}, q{-R}, q{/var/imms/chats} );<br>system(@args) == 0<br>or die "system @args failed: $?";<br><br>if ( $? == -1 ) {<br> print "failed to execute: $!\n";
<br>}<br>elsif ( $? & 127 ) {<br> printf qq{child died with signal %d, %s coredump\n}, ( $? & 127 ),<br> ( $? & 128 ) ? 'with' : 'whitout';<br>}<br>else {<br> printf "child exited with value %d\n", $? >> 8;
<br>}<br>__END__<br><br>Espero que isso ajude.<br>Se você tiver mais perguntas, eu estou à disposição.<br><br>Putamplexos!<br>--<br>Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,<br>Perl fanatic evangelist, and amateur {cook, photographer}
<br><br>_______________________________________________<br>Cascavel-pm mailing list<br><a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/cascavel-pm">http://mail.pm.org/mailman/listinfo/cascavel-pm
</a><br></blockquote></div><br>