The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
xml parsing erro no perl bishweshwar UNIX & avançada para usuários experientes 1 05-30-2007 11:59
HTML parsing por PERL avik1983 Programação Shell Script e 3 02-23-2007 09:25
Parsing e obter valores das variáveis Rekha Programação Shell Script e 3 08-01-2006 11:39
Perl - Parsing Crystal Reports srinivay Programação Shell Script e 0 05-12-2005 08:55
Conversão de bash script para analisar perl? cstovall Programação Shell Script e 2 10-13-2004 11:33

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 07-16-2008
Figaro figaro is offline
Usuário
  
 

Join Date: Jan 2007
Lugares: 268
Perl: analisar variáveis

Tenho o seguinte script:
Código:
#!/usr/bin/perl -w

@files = <*.csv>;
foreach $file (@files) {
  open(FH, $file);
  my @dt = split(/_|.csv/, $file);
  while (<FH>) { 
    chomp;
    print $dt[1] . $dt[2] . ",$_\n";
  }
  close(FH);
}
Este script lê em todas as csv no diretório atual e imprime a data, a hora eo conteúdo completo a tela.

Um arquivo é composto de um nome, uma data, uma hora e um sufixo ". Csv". Portanto, um arquivo pode ser foo_20080909_120345.csv
Ao executar este, o array @ dt detém:
- $ Dt [0] \u003d "foo"
- $ Dt [1] \u003d 20080909
- $ Dt [2] \u003d 120345

Então linha 9 (print $ dt [1]. $ Dt [2]. ", $ _ \ N") rendimentos das seguintes linhas:
"20080909 120345 ,[... resto do registro ...]"
onde deveria rendimento:
"2008/09/09 12:03:45 ,[... resto do registro ...]"

Como faço para entrar ("-") traços e cólons (":") à direita lugares sem usar código artificial, tais como:
substr ($ dt [1], 0, 4). "-". substr ($ dt [1], 4, 2). "-". substr ($ dt [1], 6, 2)
e que é apenas para a data.

Thanks in advance
 

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 03:45.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0