The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
i-nodi - di spazio su disco su / tmp bblondin AIX 4 01-24-2009 08:36 PM
Script di shell di mappa nodi XML mark14 Shell scripting e di programmazione 1 03-25-2008 01:51 PM
Gestione dei nodi? Vero UNIX e avanzata per utenti esperti 5 03-21-2003 05:47 AM
nodi kamisi UNIX for Dummies Domande & Risposte 3 05-30-2002 04:47 PM
i-nodi djatwork UNIX for Dummies Domande & Risposte 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 Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 05-26-2009
anjas anjas is offline
Utente Registrato
  
 

Iscriviti Data: marzo 2009
Ubicazione: Bali, Indonesia
Interventi: 17
Rendere i nodi di connessione per il grafico

Hi Power User,

Ho questa seguenti dati:

file1
A bis
aa B
C bis
bb X
bb Y
bb Z
O cc
cc P
cc D
. .
. .
. .
. .

e voglio trasformarle in nodi di una connessione di questo tipo:
file2

A aa A
Un aa B
A bis C
B C bis
B aa B
C C bis
Bb X X
Bb X Y
Bb X Z
Bb Y Z
Bb Y Y
Bb Z Z
. . .
. . .
. . .
. . .

Ho fatto questo rapporto, per creare un grafico. Il file potrebbe avere più di 100.000 linee. Ogni suggerimento, come creare file2 utilizzando perl o awk? Tx
  #2 (permalink)  
Old 05-26-2009
colemar colemar is offline
Utente Registrato
  
 

Iscriviti Data: aprile 2009
Località: Trento, Italia
Interventi: 116
Codice:
join -o 1.2 0 2.2 -1 1 -2 1 file1 file1 | nawk '!a[$3$2$1];{a[$1$2$3]++}'
Questo può funzionare meglio (o meno) con un grande file1:

Codice:
join -o 1.2 0 2.2 -1 1 -2 1 file1 file1 | nawk '$1<$3{print;next}{print$3,$2,$1}' | sort -u

Ultimo a cura di colemar; al 05/26/2009 11:11 AM..
  #3 (permalink)  
Old 05-26-2009
anjas anjas is offline
Utente Registrato
  
 

Iscriviti Data: marzo 2009
Ubicazione: Bali, Indonesia
Interventi: 17
Tx per la risposta. Ho provato il primo script, e ha funzionato grande
  #4 (permalink)  
Old 05-26-2009
colemar colemar is offline
Utente Registrato
  
 

Iscriviti Data: aprile 2009
Località: Trento, Italia
Interventi: 116
Inoltre, facendo entrare anche i lavori in awk:
Codice:
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
Utente Registrato
  
 

Iscriviti Data: marzo 2009
Ubicazione: Bali, Indonesia
Interventi: 17
Tx per gli script. Tuttavia, ho un altro problema, che è legata a quella precedente. Ad esempio, se ho questo file:

file1
A 3 bis
aa B 4
C 5 bis
bb X 6
bb Y 7
bb Z 8
O cc 9
P 10 cc
Q 11 cc
. .
. .
. .
. .

e voglio trasformarle in nodi di una connessione di questo tipo:
file2

A aa A 3 3
A B aa 3 4
A bis C 3 5
Aa B C 4 5
B B 4 4 bis
C 5 5 C bis
Bb X X 6 6
X, Y bb 6 7
X bb Z 6 8
Y Z bb 7 8
Y Y bb 7 7
Z bb Z 8 8
. . .
. . .
. . .
. . .

Ho fatto questo rapporto, per creare un grafico. Come prima, il file potrebbe avere più di 100.000 linee. Qualsiasi proposta di modificare la sceneggiatura, o per crearne uno nuovo? Tx
Reply

Segnalibri

Tag
connessione, grafico, nodi

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 10:25 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0