The UNIX and Linux Forums  

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
Making Connection knudepunkter for Graph anjas Shell Programmering og Scripting 4 06-18-2009 05:42 AM
FTP store filer - Kom godt "connection refused" bullz26 HP-UX 4 10-25-2008 07:52 AM
problem, samtidig med at ftp af en stor fil rprajendran UNIX for dummyer Spørgsmål & svar 1 05-28-2008 02:19 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

 
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 07-04-2009
anjas anjas is offline
Registreret Bruger
  
 

Join Date: Mar 2009
Beliggenhed: Bali, Indonesien
Stillinger: 17
Foretager store Connection knudepunkter for Graph

Hi magt brugeren,

Dybest set, denne tråd er en fortsættelse af den foregående :

Making Connection knudepunkter for Graph

Men, jeg skal forklare det igen.

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 har mere end 6.000.000 linjer.
For mindre filer (100,000 linjer), har jeg brugt dette følgende script i den tidligere tråd:

slutte-o 1,2 0 2,2 -1 1 -2 1 file1 file1 | nawk '! a [$ 3 $ 2 $ 1] (a [$ 1 $ 2 $ 3 ]++}'
slutte-o 1,2 0 2,2 -1 1 -2 1 file1 file1 | nawk '$ 1 <$ 3 (print; næste) (print $ 3, $ 2, $ 1)' | sort-u
nawk '
NR \u003d\u003d FNR (c \u003d a [$ 1] a [$ 1] \u003d c? C "" $ 2: $ 2; næste)
(C \u003d a [$ 1]
if (c) (
split (c, b)
for (k i b) (
p \u003d $ 2 <b [k]? $ 2 "" $ 1 "" b [k]: b [k] "" $ 1 "" $ 2
if (! d [p] + +) print p
)
)
)
'Fil1 fil1
For lille fil, kan disse tre slags scripts skabe netværk kun i mindre end 10 minutter. Men for filer med mere end 6.000.000 linjer, selv efter en døgn, var der ingen resultater på alle . Er der nogen hurtigere måde at gøre det?


Enhver antydning af, hvordan man kan skabe fil2 ved hjælp af perl eller awk? Tx
 

Bogmærker

Tags
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:51 PM.


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