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
Arquivo existe rotina kamathg Programação Shell Script e 9 12-16-2008 04:56
a forma de ficheiros para pc dir, utilizando rotina? wrapster Programação Shell Script e 4 05-21-2008 10:41
a forma de ficheiros para pc dir, utilizando rotina? wrapster UNIX & avançada para usuários experientes 1 05-21-2008 02:18
sub-rotina chamada sekar Sundaram Programação Shell Script e 2 11-10-2005 08:30
Entrada Pontos de rotina SPPrasad Alto Nível de programação 9 10-21-2002 11:34

Closed Thread
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 04-21-2009
fwellers fwellers is offline
Usuário
  
 

Join Date: Mar 2008
Localização: Norte, VA
Lugares: 23
awk rotina ajudar

Oi,
Eu uso awk, mas não como uma linguagem de programação. Basta geralmente em piplelines para dividir as coisas por campos.
Estou tentando realizar esta uma coisa que eu acho que um curto awk rotina seria ótimo para fazer, mas não pode figurar que para fora.

Vamos dizer que tenho um ficheiro que contém dados colunas. O ficheiro tem o seguinte aspecto:
col1
col2
col3
..

Quero awk para percorrer o arquivo e transformar cada linha em um array elemento para que eu possa fazer uma declaração printf que conteria todas as linhas do arquivo em uma declaração. A declaração seria parecido com este:

printf ( "% s,% s,% s \ n", matriz [0], matriz [1], array [2])

Na verdade, acho que a matriz elementos seriam variablized também.

Será isto uma coisa simples que eu posso obter alguma ajuda com isso?

Obrigado,
Floyd
  #2 (permalink)  
Old 04-21-2009
jim McNAMARA jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: Feb 2004
Localização: NM
Mensagens: 5.756
Código:
tr -s '\n' ' ' < oldfile > newfile
  #3 (permalink)  
Old 04-21-2009
fwellers fwellers is offline
Usuário
  
 

Join Date: Mar 2008
Localização: Norte, VA
Lugares: 23
That's pretty cool. obrigado. Isso não resolve totalmente por mim mesma.
Eu deveria ter mencionado que tenho a acrescentar-lhe alguns, e adicione vírgulas.
Portanto, posso utilizar o comando para ir para tr newfile, então:
gato newfile | awk '(printf ( "Mydata, moredata,% s,% s,% s \ n", $ 1, $ 2, $ 3))'

mas, mesmo que não é uma solução completa ainda, porque como é que o script saber quantos campos estão no arquivo, e ser capaz de decidir quantos elementos para colocar no lado direito do printf declaração?

Para, por exemplo, se o arquivo tinha 10 colunas, que o comando tr transformou em uma linha com 10 campos, como vou criar uma impressão declaração de que vai saber, havia 10 campos para que eu possa usá-los?

Obrigado,
floyd
  #4 (permalink)  
Old 04-21-2009
colemar colemar is offline
Usuário
  
 

Join Date: Apr 2009
Localização: Trento, Itália
Lugares: 116
Você pode indicar os requisitos em linguagem natural?

Talvez você deseja transpor uma coluna de comprimento desconhecido para uma linha cujos elementos são separados por vírgulas, e um número fixo de elementos adicionais estão a ser adicionado no início da fileira.
Código:
colemar@deb:~$ cat inputfile 
one
two
three
four
five
colemar@deb:~$ echo red,blue,white,$(tr '\n' ',' < inputfile)
red,blue,white,one,two,three,four,five,
  #5 (permalink)  
Old 04-21-2009
fwellers fwellers is offline
Usuário
  
 

Join Date: Mar 2008
Localização: Norte, VA
Lugares: 23
linguagem natural? Desculpe eu estava fazendo o meu melhor para comunicar minhas necessidades.

o script irá analisar um arquivo que tem um número desconhecido de linhas. Cada linha contém uma coluna nome. Para ficheiro1 por exemplo, tem o seguinte aspecto:
firstname
LastName
e-mail

...
Eu vou ter uma seqüência codificados ou dois. dizer, "token__a", e "audit_action__a"

A minha última saída para analisar o arquivo será similar a este:
..... insert into $ tabela ( token__a, audit_action__a, FirstName, LastName, e-mail ) ....

Obrigado,
floyd
  #6 (permalink)  
Old 04-21-2009
fwellers fwellers is offline
Usuário
  
 

Join Date: Mar 2008
Localização: Norte, VA
Lugares: 23
Citação:
Originally Posted by colemar View Post
colemar @ deb: ~ $ cat inputfile
um
dois
três
quatro
cinco
colemar @ deb: ~ $ echo vermelho, azul, branco, $ (tr '\ n' ',' <inputfile)
vermelho, azul, branco, um, dois, três, quatro, cinco, [/ CODE]
Colemar Ok, eu acabei de ver esta última alteração que você fez. Irá trabalhar.
Obrigado!

Obviamente, que foram capazes de percorrer unatural minha língua, a fim de determinar o que eu estava pedindo. Bom trabalho :-)

Obrigado novamente.

Floyd
  #7 (permalink)  
Old 04-21-2009
colemar colemar is offline
Usuário
  
 

Join Date: Apr 2009
Localização: Trento, Itália
Lugares: 116
Citação:
Originally Posted by fwellers View Post
Obviamente, que foram capazes de percorrer unatural minha língua, a fim de determinar o que eu estava pedindo.
Claro que não significa que a sua linguagem era antinatural, basta que você estava parcialmente utilizando código de sugerir a forma de resolver o problema em vez de explicar o problema de forma clara Inglês.
Closed Thread

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 11:19.


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