The UNIX and Linux Forums  

Go Back   Les systèmes UNIX et Linux Forums > Top Forums > De programmation et de script Shell
.
google unix.com



De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
Fichier existe routine kamathg De programmation et de script Shell 9 12-16-2008 04:56 AM
comment cp fichiers dir, en utilisant la routine? wrapster De programmation et de script Shell 4 05-21-2008 11:41 PM
comment cp fichiers dir, en utilisant la routine? wrapster UNIX for Advanced & Expert Users 1 05-21-2008 03:18 PM
sous appel de routine Sekar Sundaram De programmation et de script Shell 2 11-10-2005 08:30 PM
Points d'entrée de routine SPPrasad High Level Programming 9 10-21-2002 12:34 PM

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 Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 04-21-2009
fwellers fwellers is offline
Registered User
  
 

Join Date: Mar 2008
Lieu: Northern, VA
Posts: 23
awk routine aider

Salut,
Je utiliser awk, mais non pas comme un langage de programmation. Tout en général piplelines de scinder les choses par des champs.
Je suis en train d'accomplir une chose que ce que je pense que peu de awk routine serait de faire de grandes, mais ne peuvent pas comprendre.

Permet de dire que j'ai un fichier qui contient des colonnes de base de données. Le fichier ressemble à ceci:
col1
col2
col3
..

Je veux aller à awk par l'intermédiaire de ce fichier et tourner à chaque ligne dans un élément de tableau pour que je puisse faire une déclaration printf qui contiendra toutes les lignes du fichier dans une déclaration. La déclaration serait quelque chose comme ceci:

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

En fait, je suppose que les éléments du tableau sera également variablized.

Est-ce une simple chose que je peux obtenir de l'aide?

Merci,
Floyd
  #2 (permalink)  
Old 04-21-2009
jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: Feb 2004
Lieu: NM
Posts: 5,807

Code:
tr -s '\n' ' ' < oldfile > newfile

  #3 (permalink)  
Old 04-21-2009
fwellers fwellers is offline
Registered User
  
 

Join Date: Mar 2008
Lieu: Northern, VA
Posts: 23
That's pretty cool. merci. Il ne résout pas entièrement pour moi si.
Je viens de mentionner, je dois ajouter un peu à celui-ci, et d'ajouter des virgules.
Je peux donc utiliser la commande tr pour aller à newfile, alors:
cat newfile | awk '(printf ( "mydata, moredata,% s,% s,% s \ n", $ 1, $ 2, $ 3))'

mais, même cela n'est pas une solution complète pour le moment, car comment le script de savoir combien de champs dans le fichier, et être en mesure de décider de la manière dont de nombreux éléments à mettre sur le côté droit de la déclaration printf?

Par exemple, si le dossier avait 10 colonnes que la commande tr transformé en une ligne avec 10 champs, comment puis-je créer une impression que vous savez, il y avait 10 champs pour que je puisse les utiliser?

Merci,
floyd
  #4 (permalink)  
Old 04-21-2009
colemar colemar is offline
Registered User
  
 

Date d'inscription: avril 2009
Localisation: Trento, Italie
Messages: 116
Pouvez-vous nous indiquer les besoins en langage naturel?

Peut-être que vous voulez transposer une colonne de longueur inconnue à une ligne dont les éléments sont séparés par des virgules, et un nombre fixe d'autres éléments doivent être ajoutés à la ligne de départ.

Code:
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
Registered User
  
 

Join Date: Mar 2008
Lieu: Northern, VA
Posts: 23
en langage naturel? Désolé, je faisais de mon mieux pour communiquer mes besoins.

le script d'analyse d'un fichier qui a un nombre inconnu de lignes. Chaque ligne contient un nom de colonne. Pour file1 par exemple ressemble à ceci:
firstname
lastname
e-mail

...
Je vais avoir un éditeur de chaîne ou deux. dire, "token__a", et "audit_action__a"

Ma dernière sortie de l'analyse de ce fichier ressemble à ça:
..... insert into $ table ( token__a, audit_action__a, prénom, nom, email ) ....

Merci,
floyd
  #6 (permalink)  
Old 04-21-2009
fwellers fwellers is offline
Registered User
  
 

Join Date: Mar 2008
Lieu: Northern, VA
Posts: 23
Citation:
Posté par colemar View Post
colemar @ deb: ~ $ cat inputfile
un
deux
trois
quatre
cinq
colemar @ deb: ~ $ echo rouge, bleu, blanc, $ (tr '\ n' ',' <inputfile)
rouge, bleu, blanc, un, deux, trois, quatre, cinq, [/ CODE]
Colemar Ok, je viens de voir cette dernière modification que vous avez fait. Il fonctionnera.
Merci!

De toute évidence, vous avez été capable de parcourir unatural ma langue afin de déterminer ce que je demande. Good job :-)

Merci encore.

Floyd
  #7 (permalink)  
Old 04-21-2009
colemar colemar is offline
Registered User
  
 

Date d'inscription: avril 2009
Localisation: Trento, Italie
Messages: 116
Citation:
Posté par fwellers View Post
De toute évidence, vous avez été capable de parcourir unatural ma langue afin de déterminer ce que je demande.
Bien sûr, je ne signifie pas que votre langue n'est pas naturel, mais que vous avez été en partie à partir de code à suggérer la manière de résoudre le problème au lieu d'expliquer clairement le problème en anglais.
Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 10:10 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0