Manipulação de arquivos
Publicado por Enzo de Brito Ferber (última atualização em 24/09/2010)
[ Hits: 8.286 ]
Homepage: http://www.maximasonorizacao.com.br
Bom, resolvi aprender Perl e comecei a brincar, e achei um tutorial que tinha o seguinte exercício.
Faça um programa que leia um arquivo de texto e imprima as linhas (com sua numeração no arquivo) que contenham:
- a letra x
- a palavra 'the' (case-sensitive)
- a palavra 'the' (no-case-sensitive) - ou seja, desconsiderar se as letras são maiúsculas ou minúsculas.
#!/usr/bin/perl
#
# Regular Expressions
#
# Program that counts only the line with:
# - the letter x
# - the string the (case-sensitive)
# - the string the (non-case-sensitive)
#
# Exercice for Perl tutorial found at:
# http://www.comp.leeds.ac.uk/Perl/matching.html
#
# Enzo Ferber : <enzo@veloxmail.com.br>
# sep 2010
$file = "electricity.txt";
open ( FILE, $file );
@lines = <FILE>;
$i = 1;
foreach $_ ( @lines )
{
if ( /x/ )
{
push ( @x, $i );
}
elsif ( /the/ )
{
push ( @thecs, $i );
}
# can't be elsif because won't include the(case sensitive)
if ( /the/i )
{
push ( @thencs, $i );
}
# line numbers counter
++$i;
}
# Printing
print "Letter x\n\n";
foreach $xx ( @x )
{
print "$xx $lines[$xx - 1]";
}
print "\nthe case-sensitive\n\n";
foreach $tcs ( @thecs )
{
print "$tcs $lines[$tcs - 1]";
}
print "\nthe non-case-sensitive\n\n";
foreach $tncs ( @thencs )
{
print "$tncs $lines[$tncs - 1]";
}
FTP – Script para adicionar e remover usuários via WEB
Rsync e Perl: Sincronização de arquivos com gestão de backup incremental integrada
Script para adicionar sites ao Squid
Script que procura uma palavra em um arquivo.
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica









