The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



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

Reply
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 05-26-2009
anjas anjas is offline
Registreret Bruger
  
 

Join Date: Mar 2009
Beliggenhed: Bali, Indonesien
Stillinger: 17
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
  #2 (permalink)  
Old 05-26-2009
colemar colemar is offline
Registreret Bruger
  
 

Join Date: Apr 2009
Beliggenhed: Trento, Italien
Stillinger: 116
Code:
join -o 1.2 0 2.2 -1 1 -2 1 file1 file1 | nawk '!a[$3$2$1];{a[$1$2$3]++}'
Dette kan give bedre resultater (eller ej) med en stor file1:

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..
  #3 (permalink)  
Old 05-26-2009
anjas anjas is offline
Registreret Bruger
  
 

Join Date: Mar 2009
Beliggenhed: Bali, Indonesien
Stillinger: 17
Tx for svaret. Jeg har prøvet det første script, og det fungerede stort
  #4 (permalink)  
Old 05-26-2009
colemar colemar is offline
Registreret Bruger
  
 

Join Date: Apr 2009
Beliggenhed: Trento, Italien
Stillinger: 116
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
  #5 (permalink)  
Old 06-18-2009
anjas anjas is offline
Registreret Bruger
  
 

Join Date: Mar 2009
Beliggenhed: Bali, Indonesien
Stillinger: 17
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
Reply

Bogmærker

Tags
forbindelse, graf, knudepunkter

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 10:30 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0