[Cascavel-pm] Dúvidas quanto as opções '>' e '+>' para abertura de arquivos
Donato Azevedo
donatoaz em gmail.com
Quarta Setembro 9 06:03:25 PDT 2009
2009/9/9 Giuliani Deon Sanches <giulianisanches em gmail.com>:
>
> A diferença teorica de '>' e '+>' eu entendi já na leitura da
> documentação. A questão era mais pelo fato de que eu abri o arquivo
> com '>' retornei o handle para outra função e essa fez a leitura dele
> do inicio ao fim sem problemas como se eu tivesse aberto o arquivo com
> '+>', entende ? :)
>
> Agradeço pela questão 3, vou estudar o pedaço de código e tentar usar
> ele para o que preciso.
Ei Giuliani, você pode se aproveitar deste mecanismo (o -i) dentro de
um script também. É só setar a variável especial.
Segue um exemplo de um pequeno script meu que faz inplace de uma série
de arquivos:
<code>
use strict;
use File::Find::Rule;
my $dir = '.'
@ARGV = (File::Find::Rule->file()->name(qw/*.fdf *.FDF/)->in($dir));
$^I = '.bak';
local $/ = "\n\n"; # itera por parágrafos e não linebreaks
while (<>) {
s/C\[ 1 0 0\]/C\[ 1 1 0\]\/IC\[ 1 1 0\]/s, s/\/CA
\d(?:[\.\d]+)?\//\/CA $DefOpacity\//s,
s/\/Contents\(.*\)\//\/Contents\(ERASED!\)\//s if
/\/NM\((?<uid>[\d\w-]+)\)/s && scalar( grep {/$+{uid}/} @UIDs );
print;
}
</code>
Ele salva os arquivos backup com a extensão .bak
qualquer outra dúvida pode perguntar!
cheers!
--
Donato Azevedo
Mais detalhes sobre a lista de discussão Cascavel-pm