![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| Dela stora filer och lägg till sidhuvud och sidfot för varje fil | ashish4422 | Shell-programmering och Skript | 1 | 04-15-2008 07:12 |
| Dela en fil med något mönster - Split, Csplit, awk | madhunk | UNIX for Dummies Frågor & Svar | 10 | 12-17-2007 12:57 |
| delas filnamnet | rinku | Shell-programmering och Skript | 1 | 05-28-2007 02:47 |
| Behovet av att dela upp fil | getdpg | Shell-programmering och Skript | 11 | 09-04-2006 04:08 |
| Hur delad fil genom taggar inne fil? | spookyrtd99 | Shell-programmering och Skript | 1 | 07-31-2006 01:50 |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
||||
|
Dela filen med awk
Jag försöker läsa en fil och dela upp filen i flera filer. Jag behöver för att skapa nya filer med olika antal rader från den ursprungliga filen. dvs den första utdatafilen kan innehålla 10 linjer och den andra 100 rader och så vidare. Kriterierna är att få linjerna mellan två rader som börjar med vissa tecken (variabel)
t.ex.. Ett prov indatafil DOC100 aaaaaa bbbbbb cccccccc Slut DOC200 ddddddd eeeeeee Slut Jag måste skicka linjerna mellan DOC100 och END att out.1 och linjerna mellan DOC200 och nästa Slut på out.2 Jag trodde att jag kunde göra det med hjälp av awk och jag försökte följande kommando men det fungerade inte. k \u003d grep DOC $ filename | cut-C4-6 awk-v cn \u003d $ k '/ DOC $ cn /, / Slut / (print $ 0)' $ filename> $ outfile Kan någon hjälpa mig med detta? Tack |