Trabalhando com arquivos no Perl

Aqui venho mostrar de forma direta como trabalhar com arquivos e permissões no Linux usando Perl.

[ Hits: 40.265 ]

Por: C00L3R_ em 04/09/2008 | Blog: https://github.com/CoolerVoid


Escrever num documento com Perl



Vamos tentar com "POG".

system("echo \"@seu_texto\" >> resultado.txt");

Muito ruim de ver este código não? Vamos usar a forma certa, sem "POG":

open (OUT, ">>texto.txt");
print OUT "$numero\n";
close(OUT);

No exemplo eu só usei um número para imprimir num documento, ou seja, ele abre para modificação ">>" e imprime a variável ($numero) no documento.

Testar se o documento existe com Perl

Isso é muito simples, vamos usar a expressão "-e nome_arquivo". Exemplo:

if (-e "index.html" && -e "index.cgi") {
    print "Você tem as duas index: html e cgi\n";
}

Muito simples, o que tem de diferente aí é a expressão booleana "&&", que interpretamos como "tal elemento e tal elemento". Isso deixa o código mais rico e mais limpo.

Vamos ver esta balela para entender melhor:
  • -r: arquivo ou diretório para leitura;
  • -w: arquivo ou diretório para escrita;
  • -x: arquivo ou diretório para executar;
  • -o: arquivo ou diretório que pertence a um usuário;
  • -R: arquivo ou diretório legível para um usuário;
  • -W: arquivo ou diretório para escrita para um usuário;
  • -X: arquivo ou diretório para executar para um usuário;
  • -O: arquivo ou diretório de um usuário;
  • -e: testa a existência de um diretório ou arquivo;
  • -z: testa a existência se tiver nada no arquivo;
  • -s: testa a existência do arquivo ou diretório se tiver mais do que 0 de tamanho.

Faltam mais elementos, isso você encontra facilmente na internet.

Usando o "stat"

O "stat" pode ser usado para mostrar para o Perl onde está o diretório que você está trabalhando algumas variáveis, exemplo:

(@lista_documentos) = (stat("/home/você/teste"))[1,2];

Explicando o código, colocando o stat dentro do array estou mostrando que os arquivos 1 (da primeira linha) e 2 (segunda linha) estão em "/home/você/este". O "stat" e o "lstat" podem ser usados como links simbólicos também.

Página anterior     Próxima página

Páginas do artigo
   1. Direto ao ponto
   2. Escrever num documento com Perl
   3. Mais algumas funções e conclusão
Outros artigos deste autor

Ponteiros - Saindo de Pesadelos

Módulos de Web no Perl

Buffer Overflow: Entendendo e explorando

Usando OpenBSD como desktop

Usando o PF - Packet Filter

Leitura recomendada

Decodificando filmes do programa "3w player"

Módulos CPAN no Debian e distros GNU/Linux em geral

Decodificando filmes do programa "3w player"

Catalyst Framework Perl (parte 1)

Programando em Perl (parte 2)

  
Comentários
[1] Comentário enviado por grandmaster em 04/09/2008 - 21:54h

Legal. Mas quanto mais eu leio coisas em Perl mais eu não entendo :D

Renato de Castro Henriques
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br

[2] Comentário enviado por albertguedes em 05/09/2008 - 13:40h

opa opa opa, impressão minha ou PERL está voltando a tona ?
Espero que sim porque PERL é uma excelente linguagem, não vejo motivos para alguém não usá-la.
Valeu Tony.

[3] Comentário enviado por cesar em 08/09/2008 - 13:39h

Bacana, mas como o amigo aí de cima disse, hauha não entendo nada de Perl, complicaadoo, hauha

[]'s

[4] Comentário enviado por SMarcell em 15/09/2008 - 01:58h

POGers de todo o mundo, uni-vos!

-------
Bacana, mas como o amigo aí de cima disse, hauha não entendo nada de Perl, complicaadoo, hauha
-------

Comeceie a conhecer Perl a poucas semanas e como não sou programador profissional (apenas um entusiasta meia-boca!), acho ele bastante parecido com shell script, o que facilita bastante as coisas já que tenho um conhecimento mediano em shell.

=)


Contribuir com comentário