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
shell script til at finde og erstatte strengen i flere filer pharos467 Shell Programmering og Scripting 11 01-15-2009 11:40 AM
perl-lignende split-funktion for bash? eur0dad Shell Programmering og Scripting 5 09-05-2008 06:23 PM
[Ksh] Split string i array piooooter Shell Programmering og Scripting 3 09-01-2007 12:22 PM
split string hjælpe senthilk615 Shell Programmering og Scripting 4 03-27-2006 06:43 PM
opdele en streng gazingdown Shell Programmering og Scripting 3 02-09-2006 05:34 AM

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øg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 10-29-2007
vikas027 vikas027 is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 77
Unhappy split-filer ved at angive en streng (bash shell)

Hej alle,

Jeg har en fil på omkring 300 linjer, hvor string "Server" forekommer omkring 32 gange.

for f.eks.
Citat:
SERVER
.....
.....
....

SERVER

.....
.....
....

SERVER
.....
.....
....

Jeg har brug for at opdele filer vil, for f.eks


Citat:
file1
SERVER
....
....
....

fil2
SERVER
.....
...
....


fil3
SERVER
.....
....
....
Jeg bruger denne kode
awk '/ server / (n + +) (print> fn)' f \u003d / Vikas / list / Vikas / endelig

Men problemet er, at det er højst 10 filer, men jeg har brug for mere end 30.
Jeg har forsøgt at bruge nawk, men gjorde ikke arbejdet.
Jeg bruger bash scripting på Sun OS.


Enhver anden måde at opdele disse data???

Pls hjælp!

Thanks in adv.
Hilsen,
Vikas
  #2 (permalink)  
Old 10-29-2007
vgersh99's Avatar
vgersh99 vgersh99 is online now Forum Staff  
Moderator
  
 

Join Date: Feb 2005
Beliggenhed: Boston, MA
Indlæg: 5.122
Code:
awk '/SERVER/{n++}{output = f n; print > output; close(output) }' f=/vikas/list /vikas/final
  #3 (permalink)  
Old 10-29-2007
vikas027 vikas027 is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 77
Citat:
Oprindeligt Indsendt af vgersh99 View Post
Code:
awk '/SERVER/{n++}{output = f n; print > output; close(output) }' f=/vikas/list /vikas/final

Takket vgersh99,
vil vende tilbage til dig efter at have prøvet denne kommando.
  #4 (permalink)  
Old 10-29-2007
vikas027 vikas027 is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 77
Citat:
Oprindeligt Indsendt af vgersh99 View Post
Code:
awk '/SERVER/{n++}{output = f n; print > output; close(output) }' f=/vikas/list /vikas/final
hej,
denne cmd gør så mange blank filer som strengen SERVER er der i den endelige fil.

pls hjælp
  #5 (permalink)  
Old 10-29-2007
vgersh99's Avatar
vgersh99 vgersh99 is online now Forum Staff  
Moderator
  
 

Join Date: Feb 2005
Beliggenhed: Boston, MA
Indlæg: 5.122
Code:
awk '/SERVER/{if (n) close(output); output= f ++n} n {print >> output }' f=/vikas/list /vikas/final

Sidst redigeret af vgersh99; 10-29-2007 på 02:36 PM..
  #6 (permalink)  
Old 10-29-2007
vikas027 vikas027 is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 77
Citat:
Oprindeligt Indsendt af vgersh99 View Post
Code:
awk '/SERVER/{if (n) close(output); output= f ++n} n {print >> output }' f=/vikas/list /vikas/final
hej,
Dette gjorde ikke gjort nogen fil, heller ikke en tom en.
Tak.
  #7 (permalink)  
Old 10-29-2007
vgersh99's Avatar
vgersh99 vgersh99 is online now Forum Staff  
Moderator
  
 

Join Date: Feb 2005
Beliggenhed: Boston, MA
Indlæg: 5.122
Citat:
Oprindeligt Indsendt af vikas027 View Post
hej,
Dette gjorde ikke gjort nogen fil, heller ikke en tom en.
Tak.
Sorry 'Bout, at - nogle awk's tilvækst pre-tilvækst ops synes ikke at arbejde den måde, de skulle.
Code:
awk '/SERVER/{if (n++) close(output); output= f n} n {print >> output }' f=/vikas/list /vikas/final
På Solaris - brug "nawk 'eller' / usr/xpg4/bin/awk«
Closed Thread

Bogmærker

Tags
linux, linux kommandoer

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 01:58 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