![]() |
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.
|
|
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 |
| Ny på manus, Behöver hjälp | newbie22102 | Shell-programmering och Skript | 2 | 02-25-2008 11:08 |
| scripting hjälp | james94538 | Shell-programmering och Skript | 2 | 02-08-2008 07:36 |
| Skillnaden mellan AIX shell scripting och Unix shell scripting. | haroonec | Shell-programmering och Skript | 2 | 04-12-2006 09:12 |
| scripting guru's pls hjälpa mig med scripting på AIX | thatiprashant | Shell-programmering och Skript | 1 | 01-20-2006 07:58 |
| Ksh Scripting | dstaller | Shell-programmering och Skript | 1 | 11-16-2005 02:30 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd |
Omdöme:
|
Visningslägen |
|
|
|
||||
|
Behöver scripting Hjälp
Bäste Scripting experter,
Begär att vägleda mig i att flytta kolumnen värden till rader Exempel: Fil 1: 1, A, B, C, D, E, F, G, H 2, F, G, H, I, L Utdatafilen 1, a, b, c 1, d, e, f 1, G, H 2, F, G, H 2, I, L Egentligen försökte jag med hjälp av awk och sed men tyvärr kunde jag inte få resultanten. Hälsningar nani |
|
|||||
|
Använd nawk eller / usr/xpg4/bin/awk på Solaris:
Kod:
$ cat file
1,a,b,c,d,e,f,g,h
2,f,g,h,i,l
$ awk -F, '{
printf$1FS;c=0
for(i=2;i<=NF;i++)
printf$i (++c%3?i==NF?RS:FS:RS$1FS)
}' file
1,a,b,c
1,d,e,f
1,g,h
2,f,g,h
2,i,l
|
|
||||
|
Plz Hitta felet i följande kod
cut-f 7,34 --d "," first97col.CSV | awk-F \ "( if ($ 2 !\u003d"") printf $ 1FS c \u003d 0 for (i \u003d 2; i <\u003d NF, i + +) printf $ i (+ + c% 4? i \u003d\u003d NF? RS: FS: RS $ 1FS) fi; ) ' Senast redigerad av pkumar3; 10-13-2008 vid 09:41.. |
|
|||||
|
Citat:
Kod:
perl -F, -nae'if($#F){s/((?:(?:.*?),){3}[^,]*)/$1\n$F[0]/g;print}' filename
|
|
||||
|
Här är en ganska enkel Python tillvägagångssätt (testas och arbete).
Kod:
$ cat nani123.py
#!/usr/bin/env python
input = open("temp.txt", 'r')
for line in input:
line = line.rstrip()
line = line.split(',')
num = line[0]
data = line[1:]
while data:
print num + "," + ','.join(data[:3])
data = data[3:]
Kod:
$ cat temp.txt 1,a,b,c,d,e,f,g,h 2,f,g,h,i,l $ python nani123.py 1,a,b,c 1,d,e,f 1,g,h 2,f,g,h 2,i,l |