The UNIX and Linux Forums  
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Använda grep extrahera radnumret mskarica Shell-programmering och Skript 8 06-26-2008 03:47
Hur man grep / zgrep att produktionen endast matchningsreglerna filnamnet och radnumret? vvaidyan UNIX for Dummies Frågor & Svar 3 03-12-2008 05:33
grep strängen med radnumret salaathi Shell-programmering och Skript 4 12-04-2007 11:42
Få Filnamn och Radnummer använder grep ceemh3 UNIX for Dummies Frågor & Svar 4 09-17-2007 11:35
finns det någon anledningen att få antalet linje grep resultatet? umen UNIX for Dummies Frågor & Svar 1 03-16-2006 09:56

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 denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 12-09-2007
rodluo rodluo is offline
Registered User
  
 

Join Date: Dec 2007
Ort: Hongkong
Inlägg: 2
Grep ett nummer från en rad i ksh

I file.name har jag en rad som lyder

$ Idir / imgen-usemonths-dropcheck-monitor-sizelimit 80000000-intervallet 120-volcal HSI

Hur kan jag få storleksgränsen, dvs 80000000 ut och skicka det till en variabel som kallas STORLEK?

Tack. Jag försökte
echo "grep sizelimit file.name" | sed -n-e 's / ^. sizelimit \ ([0-9] * \)-intervallet .* $ / \ 1 / p'

men det utgång ingenting.
  #2 (permalänk)  
Old 12-09-2007
prowla prowla is offline
Läs Endast
  
 

Join Date: Nov 2007
Inlägg: 165
Så nära ...

Kod:
SIZE=`grep sizelimit myfile | sed 's/^.*sizelimit //' | awk '{print $1}'`
bör arbeta (OBS. Det gör att de argument som i en annan ordning i filen).
Det finns andra alternativ som innebär att analysera linjen (antingen i awk eller skal), som:

Kod:
SIZE=0
grep sizelimit myfile | while read s
do
  set -- $s
  while [ $# -gt 0 ]
  do
    case $1 in
      -sizelimit) SIZE=$2; break;;
      *) shift;;
    esac
  done
done
  #3 (permalänk)  
Old 12-09-2007
rodluo rodluo is offline
Registered User
  
 

Join Date: Dec 2007
Ort: Hongkong
Inlägg: 2
Citat:
Ursprungligen postat av prowla View Post
Så nära ...

Kod:
SIZE=`grep sizelimit myfile | sed 's/^.*sizelimit //' | awk '{print $1}'`
bör arbeta (OBS. Det gör att de argument som i en annan ordning i filen).
Det finns andra alternativ som innebär att analysera linjen (antingen i awk eller skal), som:

Kod:
SIZE=0
grep sizelimit myfile | while read s
do
  set -- $s
  while [ $# -gt 0 ]
  do
    case $1 in
      -sizelimit) SIZE=$2; break;;
      *) shift;;
    esac
  done
done
Thanks a lot prowla!
Det första alternativet fungerar bra. Menade du det fungerar även om "-sizelimit 80000000" flyttas någon annanstans i raden också?
  #4 (permalänk)  
Old 12-09-2007
prowla prowla is offline
Läs Endast
  
 

Join Date: Nov 2007
Inlägg: 165
Citat:
Ursprungligen postat av rodluo View Post
Thanks a lot prowla!
Det första alternativet fungerar bra. Menade du det fungerar även om "-sizelimit 80000000" flyttas någon annanstans i raden också?
Inga probs, och ja - en linje som kan ändra precis så länge-sizelimit följs av sitt värde.
Vad det egentligen gör är att kotletter allt från början av linjen fram till och med ordet sizelimit och utrymmet efter, och sedan tar det första ordet i övrigt (vilket är värdet av sizelimit).
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 10:53.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0