The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
trengte hjelp til å skrive et manus! wrapster Shell programmering og Skripting 5 06-13-2008 05:52
Script nødvendig vpandey Shell programmering og Skripting 3 03-04-2008 09:45
Script informasjon chris1234 UNIX for Dummies Spørsmål og svar 3 12-17-2007 07:35
Hjelp trengs! min første skriptet fcbarcelona1984 Shell programmering og Skripting 1 11-04-2007 12:32
Script Trengs Dastard Sun Solaris 1 03-20-2007 10:54

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 Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 06-19-2008
scuderiaf1 scuderiaf1 is offline
Registrert bruker
  
 

Bli Dato: juni 2008
Innlegg: 6
script hjelpe trengs --- awk?

Hei og takk på forhånd.

Jeg trenger å konsolidere 2 poster av data i 1 posten.

Her er et utvalg av innspill:
-------------------------------------------------- ----------------------------------------
totalcount fred thomas 99999,00 88888:00
totalt 77777,00
-------------------------------------------------- ----------------------------------------
totalcount sally smither 99999,00 88888:00
totalt 77777,00 66666,00
-------------------------------------------------- ----------------------------------------

Eksempel poster er gruppert innenfor'-------'. Jeg trenger dataene innenfor'---------' konsoliderte å ligne det output format

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

Sist endret av scuderiaf1; 06-21-2008 kl 10:44.. Reason: forenklet eksempel data
  #2 (permalink)  
Old 06-20-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Moderator
  
 

Bli Dato: Sep 2007
Sted: Tyskland
Innlegg: 2289
Hvis jeg har forstått det, bare fjerne ------ linjer og tomme, ikke sant?
Code:
grep -vE "^------|^$" infile > newfile
  #3 (permalink)  
Old 06-20-2008
scuderiaf1 scuderiaf1 is offline
Registrert bruker
  
 

Bli Dato: juni 2008
Innlegg: 6
zaxxon


Ja det er en av de tingene nødvendig. Jeg nå under stand-v og-E args av grep. ty.

Jeg fortsatt behov for å befeste et par felt på hver post i mellom'------' til én posten ...... gjør det fornuftig?

Jeg har en base awk uttalelse som jeg har startet. Jeg rør ditt anbefalte grep kommandoen til den.


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

Sist endret av scuderiaf1; 06-21-2008 kl 10:35..
  #4 (permalink)  
Old 06-21-2008
scuderiaf1 scuderiaf1 is offline
Registrert bruker
  
 

Bli Dato: juni 2008
Innlegg: 6
Jeg har litt tid denne morgenen til å jobbe med dette skriptet ... alle hjelpe ville være verdsatt. Jeg vil være postering løsningen.


Go Ferrari!
  #5 (permalink)  
Old 06-21-2008
ripat ripat is offline Forum Advisor  
Registrert bruker
  
 

Bli Dato: Oct 2006
Bosted: Belgia
Innlegg: 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
Registrert bruker
  
 

Bli Dato: juni 2008
Innlegg: 6
ty .... som fungerer.

Jeg forsøker å lese / lære om viktige deler av dette skriptet / kommandoen. Er er et sant utsagn som awk vurderer everthing mellom posten seperator RS som én post?

Wow ren og enkel.

Igjen takk og regrards,

T

Jeg har satt meg i begynnelsen av Eau Rouge. At kretsen i et magisk sted.
  #7 (permalink)  
Old 06-21-2008
fpmurphy's Avatar
fpmurphy fpmurphy is online now Forum Staff  
Moderator
  
 

Bli Dato: desember 2003
Sted: Florida
Innlegg: 1932
En ren Korn shell løsning
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

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 10:04.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0