![]() |
|
|
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 |
| Selektiv ekstraktion af data fra en filer | dwgi32 | Shell Programmering og Scripting | 3 | 06-26-2009 05:52 AM |
| Uddrag flere gentagne data fra en tekstfil | apjneeraj | Shell Programmering og Scripting | 5 | 04-14-2009 03:40 AM |
| udtræk af data fra en tekstfil, der følger visse mønster | mohkris | UNIX for Advanced & Ekspertsøgning Brugere | 4 | 09-23-2008 08:09 AM |
| Læs data fra flere filer og summen af værdien | nvuradi | Shell Programmering og Scripting | 9 | 09-11-2008 02:08 PM |
| grep flere tekstfiler i mappen i 1 tekstfil? | coppertone | UNIX for dummyer Spørgsmål & svar | 7 | 08-23-2002 03:50 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
Hej kære venner,
Mit problem, som beskrevet nedenfor synes virkelig grundlæggende. Faktum er, at jeg er helt ny til programmering, og har kun en uge til at producere et script ( CShell eller Perl ? ) Til at udføre denne handling. Mens du søger på de fora, jeg fandt en kommando, der kunne hjælpe mig, men jeg ved ikke, hvordan man bruger det rigtigt: S. Men først og fremmest. . . sammenhæng. Jeg har 7.300 tekstfiler, som hver indeholder den samme type oplysninger. Nedenfor er vist, hvordan teksten filer er skrevet: 3 parametre på 05JAN01. 1 AZU1 STA X -0.247297943318988E 07 + - 0.241394876950605E-02 2 AZU1 STA Y -0.467133800760033E 07 + - 0.374164031593362E-02 3 AZU1 STA Z 0.355810775092403E 07 + - 0.257172727253398E-02 2 1 0.571958818322482E 00 3 1-0.659378461245129E 00 3 2-0.847505892381651E 00 AZU1 ANTENNA LC 0,1636 0,0000 0,0000! Op nordøst (m) Med henblik på at analysere alle de data, jeg har brug for at uddrage den dristige værdier, og sætte hver enkelt i en anden kolonne i en Excel-fil (eller tilsvarende) eller i en tekstfil (men med de tre værdier på en linje, og måske forsøge at oprette en csv-fil). Til slut, jeg har en fil som dette i en anden mappe. . . . og der er 3 eller 4 niveauer af forskellen i arborescence. Som: desktop/data_2005/05JAN01/out/solution/05JAN01AZU1_fix.txt desktop/data_2005/05JAN02/out/solution/05JAN02AZU1_fix.txt og den går på for hele året. . . Tanken er at bruge 'grep' kommandoen jeg gætte: Jeg forsøgte med denne "egrep "1 | 2 | 3" <05JAN01AZU1_fix.stacov.txt | awk '(print $ 5)'>> output.txt"Men det virker ikke ordentligt. Det gjorde produktionen rent de 3 værdier, som jeg vil, når jeg har ændret "1 | 2 | 3" til "10 | 20 | 30" og har ændret de værdier 1,2,3 til 10,20,30før de tre værdier Jeg ønskede at udvinde. Så dybest set. . . Jeg har en tekst-fil for hver dag i året, der indeholder tre værdier, som jeg ønsker at sætte i tre separate kolonner i en Excel-fil, eller i den samme linje i CSV-filen. Jeg gætter på, at jeg er nødt til at finde den måde at udtrække korrekt mine værdier, men også at jeg er nødt til at skrive en slags løkke, til at gå gennem alle de mapper (dage) af året. CShell eller Perl ? Er der nogen der har en eller flere ideer til at hjælpe mig til at gå videre? Hvis du gør det, vil jeg være glad, hvis du slipper det der Tak. . . PS: Jeg ved ikke, hvem der skrev reglerne for forummet. . . punktet n ° 15 "Ingen rygning i de fora," fik mig til at smile. . . ![]() |
|
||||
|
Må ikke anvendes cshell - lyder som om du er på universitetet ... Har du bash eller ksh eller endda Bourne? Der er meget gode grunde til at undgå csh. Her er en ikke-Cshell svar Code:
find /desktop/data_2005 -name '*AZU1_fix.txt' |
while read filename
do
awk '{ printf("%s ", $5)} END {printf("\n")} ' $filename
done | tr -s ' ' ',' > data_2005.csv
|
|
||||
|
Mange tak Jim, det virker perfekt
Jeg har stadig til at søge fuldt ud at forstå, hvordan det virker. . . Jeg mener den syntaks og alting. . . Jeg vil gerne output datoer fx "05JAN01" i første kolonne som godt. . . Jeg har bemærket en forskel mellem værdierne af txt-filer og værdierne i csv. . . For eksempel når den første værdi er "-0,247297943318988E 07 "(se eksempel i mit første indlæg), bliver det" -2.472.979.90616501"(Decimal del, ser det ud). Jeg ved endnu ikke, om jeg faktisk har brug for at præcision... Jeg kan kontrollere dette. Nogen idéer? Din kode vil hjælpe mig meget. . . Tak igen! Ackheron. Senest redigeret af ackheron; 07-05-2009 kl 08:46 AM.. |
![]() |
| Bogmærker |
| Tags |
| udvinding tekstfiler flere |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|