The UNIX and Linux Forums  
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.

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
besoin d'aide dans l'écriture d'un script! wrapster De programmation et de script Shell 5 06-13-2008 05:52 AM
Script nécessaires vpandey De programmation et de script Shell 3 03-04-2008 09:45 AM
Script informations nécessaires chris1234 UNIX pour les nuls Questions et réponses 3 12-17-2007 07:35 PM
help needed! mon premier script fcbarcelona1984 De programmation et de script Shell 1 11-04-2007 12:32 PM
Script Needed Lâche SUN Solaris 1 03-20-2007 10:54 AM

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 06-19-2008
scuderiaf1 scuderiaf1 is offline
Registered User
  
 

Date d'inscription: juin 2008
Messages: 6
script awk --- besoin d'aide?

bonjour et merci d'avance.

J'ai besoin de consolider les 2 enregistrements de données en 1 record.

Voici un exemple de l'entrée:
-------------------------------------------------- ----------------------------------------
totalcount fred thomas 99999,00 88888:00
total 77.777,00
-------------------------------------------------- ----------------------------------------
sally totalcount Smither 99999,00 88888:00
total 77777,00 66666,00
-------------------------------------------------- ----------------------------------------

Exemples de dossiers sont regroupés au sein de la'-------'. J'ai besoin de données dans les comptes consolidés'---------' à ressembler à la format de sortie ci-dessous

Fred, Thomas, 77777.00, 99999.00, 888888:00
Sally, Smither, 77777.00, 99999.00, 888888:00

Dernière édition par scuderiaf1; au 06.21.2008 10:44 AM.. Motif: simplification de l'échantillon de données
  #2 (permalink)  
Old 06-20-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Modérateur
  
 

Join Date: Sep 2007
Lieu: Allemagne
Messages: 2285
Si je l'ai eu droit, il suffit de supprimer les lignes et les ------ vides, non?
Code:
grep -vE "^------|^$" infile > newfile
  #3 (permalink)  
Old 06-20-2008
scuderiaf1 scuderiaf1 is offline
Registered User
  
 

Date d'inscription: juin 2008
Messages: 6
zaxxon


Oui c'est une des choses nécessaires. Je donne maintenant la position de la sous-v-E et args de grep. ty.

J'ai encore besoin de consolider un couple de champs de chaque enregistrement entre les'------' à un record ...... Est-ce logique?

J'ai une base awk déclaration que j'ai commencé. J'ai recommandé votre fil à la commande grep.


Code:
grep -vE "^------|^$" $FILENAME | awk '$4="04" { print $1","$2 }'

Dernière édition par scuderiaf1; au 06.21.2008 10:35 AM..
  #4 (permalink)  
Old 06-21-2008
scuderiaf1 scuderiaf1 is offline
Registered User
  
 

Date d'inscription: juin 2008
Messages: 6
J'ai un peu de temps ce matin pour travailler sur ce script ... toute aide serait appréciée. Je vais poster la solution.


Allez Ferrari!
  #5 (permalink)  
Old 06-21-2008
ripat ripat is offline Forum Advisor  
Registered User
  
 

Join Date: Oct 2006
Lieu: Belgique
Messages: 438
Code:
awk 'BEGIN{RS="-+"; OFS=", "} $2 {print $2, $3, $7, $4, $5 }' your-file
  #6 (permalink)  
Old 06-21-2008
scuderiaf1 scuderiaf1 is offline
Registered User
  
 

Date d'inscription: juin 2008
Messages: 6
ty .... qui fonctionne.

Je tente de lire / apprendre davantage sur les parties importantes de ce script / commande. Est-ce une véritable déclaration considère que awk everthing entre le record seperator RS comme un record?

Wow propre et simple.

Encore une fois vous remercier, vous et regrards,

T

J'ai samedi au début de l'Eau Rouge. Ce circuit est un lieu magique.
  #7 (permalink)  
Old 06-21-2008
fpmurphy's Avatar
fpmurphy fpmurphy is offline Forum Staff  
Modérateur
  
 

Join Date: Dec 2003
Lieu: Florida
Posts: 1,927
Un pur Korn shell solution
Code:
#!/usr/bin/ksh93

typeset -L1 -u firstF
typeset -L1 -u firstL

while read a b c d e
do
   if [[ $a == "totalcount" ]]; then
       nameF=$b
       nameL=$c
       numD=$d
       numE=$e
   fi
   if [[ $a == "total" ]]; then
       firstF=$nameF
       firstL=$nameL
       print "${firstF}${nameF#?}, ${firstL}${nameL#?}, $b, $numD, $numE"
   fi
done < file
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:58 AM.


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