The UNIX and Linux Forums  
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.

Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Array problem ajgwin Shell programmering og Skripting 0 05-27-2008 10:36
Problemet med array \u003d ($ (finne ....) jul Shell programmering og Skripting 1 02-27-2008 04:28
problem med blank mellomrom i array kamicasse UNIX for Dummies Spørsmål og svar 4 12-06-2007 02:40
Pek og Array Konverter Problem zhshqzyc High Level Programmering 0 02-25-2006 09:28
char array problem DebianJ High Level Programmering 4 06-25-2005 11:41

Closed Thread
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øk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 02-09-2007
shary shary is offline
Registrert bruker
  
 

Bli Date: Jan 2007
Innlegg: 61
array problem

Kjære Experts,

behage hjelpe meg ut igjen min array begreper er ikke helt klart jeg har en tekstfil ut.
1 | usa | tt
2 | usa | ll
3 | usa | vg
4 | uk | nn
5 | uk | bb
6 | Kuwait | mm
6 | Kuwait | jkj
7 | dubai | tt

Jeg ønsker å lagre den tredje fied i en tekstfil på han array og etter at den skal gi meg noen rapporter som dette

tredje feltet teller
USA 3
VG 2
Kuwait 2
dubai 1
bør det store tredje feltet i tabellen, og gi meg telle hvor mange ganger et navn appeared.the tredje feltet kan alfanumerisk.
vennligst kan enhver kroppen fortelle meg hvordan du gjør dette ved hjelp matrise.

Hilsen,
Shary
  #2 (permalink)  
Old 02-09-2007
sumeet sumeet is offline
Registrert bruker
  
 

Bli Dato: november 2006
Innlegg: 33
prøv dette:

selv har jeg vært på utkikk etter en awk skript for at noe lignende
Gruppen av kolonner og så teller.

Jeg har awk gjøre gruppen ved og summen:

awk-F, "(sum [$ 1, $ 2, $ 3] + \u003d $ 4) END (for (i i sum) print i, sum [i]) 'data.

Takk
SUmeet
  #3 (permalink)  
Old 02-09-2007
shary shary is offline
Registrert bruker
  
 

Bli Date: Jan 2007
Innlegg: 61
array problem

Kjære Summit,

takk så mye for å svare meg jeg virkelig setter pris på at du
men kan du forklare meg dette
(sum [$ 1, $ 2, $ 3] + \u003d $ 4)
hva betyr dette i array coz min array konseptet er svake og det andre ting jeg vil lagre kun 3dje feltet, men i ditt tilfelle synes det å være lagret 1,2,3 fileds høyre.
dataene kan være 1000 linje i teksten min fil så kan du korte det ut kommandoen
awk-F, "(sum [$ 1, $ 2, $ 3] + \u003d $ 4) END (for (i i sum) print i, sum [i]) 'data.

Hilsen,
Shary
  #4 (permalink)  
Old 02-09-2007
Perderabo's Avatar
Perderabo Perderabo is online now Forum Staff  
Unix Daemon
  
 

Bli Dato: Aug 2001
Beliggenhet: Ashburn, Virginia
Innlegg: 9121
En perl Løsning:
Code:
$ cat data
1|usa|hh
2|usa|ll
3|usa|vg
4|uk|nn
5|uk|bb
6|kuwait|mm
6|kuwait|jkj
7|dubai|hh
$
$
$ cat mm.pl
#! /usr/local/bin/perl

open(DATA, "< data") || die "Unable to open file other\n";
while (<DATA>) {
        chomp;
        @fields = split(/\|/);
        $counts{$fields[1]}++;
}
close(DATA);

foreach $word (sort keys %counts) {
        print "value = ", $word, "  count = ",  $counts{$word}, "\n";
}
exit 0
$
$
$
$ ./mm.pl
value = dubai  count = 1
value = kuwait  count = 2
value = uk  count = 2
value = usa  count = 3
$
  #5 (permalink)  
Old 02-09-2007
shary shary is offline
Registrert bruker
  
 

Bli Date: Jan 2007
Innlegg: 61
ved hjelp av matriser

Kjære Experts,

jeg dont vil skriptet i perl.
så hvis det er mulig å gjøre annet enn perl bruker arrays (ikke perl).

Hilsen,

Shary
  #6 (permalink)  
Old 02-10-2007
tayyabq8's Avatar
tayyabq8 tayyabq8 is offline Forum Advisor  
Moderator
  
 

Bli Dato: november 2004
Bosted: Bahrain
Innlegg: 579
Pr eksempelannonsene utgang, du må stole på andre feltet ikke den tredje, prøv dette:
Code:
awk -F"|" '{ freq[$2]++ } END {
for (word in freq)
printf "%s\t%d\n", word, freq[word]
}' data
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er PÃ¥
Smilefjes er PÃ¥
[IMG] koden PÃ¥
HTML-koden Av
Pingbacks er PÃ¥
Refbacks er PÃ¥




Alle klokkeslett er GMT -4. NÃ¥ er klokken 08:00.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0