![]() |
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.
|
|
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 |
| i-knudepunkter - ud af diskplads på / tmp | bblondin | AIX | 4 | 01-24-2009 08:36 PM |
| Shell script til kort XML nodes | mark14 | Shell Programmering og Scripting | 1 | 03-25-2008 01:51 PM |
| Administrerende knudepunkter??? | Sandeste | UNIX for Advanced & Ekspertsøgning Brugere | 5 | 03-21-2003 05:47 AM |
| knudepunkter | kamisi | UNIX for dummyer Spørgsmål & svar | 3 | 05-30-2002 04:47 PM |
| i-nodes | djatwork | UNIX for dummyer Spørgsmål & svar | 4 | 09-25-2001 01:29 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
Making Connection knudepunkter for Graph
Hi Power User,
Jeg har denne følgende oplysninger: file1 aa A aa B aa C bb X bb Y bb Z cc O cc P cc Q . . . . . . . . og jeg ønsker at gøre dem til en forbindelse knudepunkter som denne: fil2 A AA A A AA B En aa C B aa C B aa B C aa C X bb X X bb Y X bb Z Y bb Z Y bb Y Z bb Z . . . . . . . . . . . . Jeg lavede denne forbindelse, at oprette en graf. Filen kan have mere end 100.000 linjer. Enhver antydning af, hvordan man skaber fil2 ved hjælp perl eller awk? Tx |
|
||||
|
Code:
join -o 1.2 0 2.2 -1 1 -2 1 file1 file1 | nawk '!a[$3$2$1];{a[$1$2$3]++}'
Code:
join -o 1.2 0 2.2 -1 1 -2 1 file1 file1 | nawk '$1<$3{print;next}{print$3,$2,$1}' | sort -u
Sidst redigeret af colemar; 05-26-2009 på 11:11 AM.. |
|
||||
|
Også gør selv de slutte arbejdet i awk:
Code:
nawk '
NR==FNR { c = a[$1]; a[$1] = c?c" "$2:$2; next }
{ c = a[$1]
if (c) {
split(c,b)
for (k in b) {
p = $2<b[k]?$2" "$1" "b[k]:b[k]" "$1" "$2
if (!d[p]++) print p
}
}
}
' file1 file1
|
|
||||
|
Tx for scripts. Jeg har dog et andet problem, som hænger sammen med den foregående. For eksempel, hvis jeg har denne fil:
file1 aa A 3 aa B 4 aa C 5 bb X 6 bb Y 7 bb Z 8 cc O 9 cc P 10 cc Q 11 . . . . . . . . og jeg ønsker at gøre dem til en forbindelse knudepunkter som denne: fil2 A AA A 3 3 A AA B 3 4 En aa C 3 5 B aa C 4 5 B aa B 4 4 C aa C 5 5 X bb X 6 6 X bb Y 6 7 X bb Z 6 8 Y bb Z 7 8 Y bb Y 7 7 Z bb Z 8 8 . . . . . . . . . . . . Jeg lavede denne forbindelse, at oprette en graf. Ligesom før, Filen kan have mere end 100.000 linjer. Ethvert forslag om at ændre de script, eller at oprette en ny? Tx |
![]() |
| Bogmærker |
| Tags |
| forbindelse, graf, knudepunkter |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|