![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| Filen findes rutinemæssige | kamathg | Shell Programmering og Scripting | 9 | 12-16-2008 04:56 AM |
| hvordan cp filer til dir, bruger rutinemæssige? | wrapster | Shell Programmering og Scripting | 4 | 05-21-2008 11:41 PM |
| hvordan cp filer til dir, bruger rutinemæssige? | wrapster | UNIX for Advanced & Ekspertsøgning Brugere | 1 | 05-21-2008 03:18 PM |
| sub rutine opkald | sekar sundaram | Shell Programmering og Scripting | 2 | 11-10-2005 08:30 PM |
| Entry Points Rutinemæssig | SPPrasad | Højtstående Programmering | 9 | 10-21-2002 12:34 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
awk rutinemæssige hjælpe
Hej,
Jeg bruger awk men ikke som et programmeringssprog. Bare generelt i piplelines at splitte ting ud af marker. Jeg forsøger at opnå dette én ting, at jeg synes, en kort awk rutine ville gøre meget for, men kan ikke finde den. Lad os sige jeg har en fil, der indeholder databasen kolonner. Filen ser sådan ud: col1 col2 col3 .. Jeg ønsker awk at gå gennem denne fil og dreje hver linje i et array element, således at jeg kan gøre en printf erklæring, som vil indeholde alle de linjer i filen i en erklæring. Oversigten vil se nogenlunde sådan her: printf ( "% s,% s,% s \ n", array [0], array [1], array [2]) Actually, I guess array elementer ville være variablized også. Er det en simpel ting jeg kan få hjælp med? Tak, Floyd |
|
||||
|
That's pretty cool. tak. Det er ikke fuldt ud løse for mig selv.
Jeg skulle have nævnt, jeg har at tilføje til det, og tilføje kommaer. Så jeg kan bruge tr kommando til at gå til newfile, så: cat newfile | awk '(printf ( "mydata, moredata,% s,% s,% s \ n", $ 1, $ 2, $ 3))' Men selv det er ikke en komplet løsning endnu, fordi hvordan vil scriptet vide, hvor mange felter er i filen, og være i stand til at beslutte, hvor mange elementer, der skal sættes på højre side af printf erklæring? For fx, hvis filen havde 10 kolonner, at tr kommando forvandlet til en linje med 10 felter, hvordan vil jeg oprette et print erklæring, der vil vide, var der 10 felter, så jeg kan bruge dem? Tak, Floyd |
|
||||
|
Kan du angive de krav i naturligt sprog? Måske du vil gennemføre en kolonne af ukendt længde til en række, hvis elementer er adskilt af komma, og et fast antal yderligere elementer, der skal indsættes i rækken start. 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, |
|
||||
|
naturligt sprog? Undskyld jeg gjorde mit bedste for at kommunikere mine behov.
scriptet vil parse en fil, der har et ukendt antal linjer. Hver linje indeholder en kolonne navn. For f.eks file1 ser sådan her ud: Fornavn Efternavn ... Jeg vil have en hardcodede strengen eller to. sige, "token__a" og "audit_action__a" Min endelige output fra parse denne fil vil se sådan ud: ..... indsætte i $ tabel ( token__a, audit_action__a, Fornavn, Efternavn, e-mail ) .... Tak, Floyd |
|
||||
|
Citat:
Tak! Naturligvis du var i stand til at vade igennem min unatural sprog med henblik på at fastslå, hvad jeg blev bedt om. Good job :-) Tak igen. Floyd |
|
||||
|
Jeg er naturligvis ikke ensbetydende med, at dit sprog var unaturligt, bare at du var til dels ved hjælp af kode, der tyder på, hvordan man kan løse problemet i stedet for at forklare problemet i et letforståeligt engelsk.
|
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|