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
ekstrakt numre fra et ord systemali Shell Programmering og Scripting 14 03-30-2009 04:47 AM
kan array butik float punkt numre naree Sun Solaris 1 03-05-2008 06:59 AM
Sådan opbevarer de data retrived af en vælge forespørgsel i variabler? jisha Shell Programmering og Scripting 12 01-17-2008 11:45 PM
ekstrakt fra strengen variable i nye variabler Sniper Pixie UNIX for dummyer Spørgsmål & svar 2 03-03-2006 10:49 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 11-12-2007
davewg davewg is offline
Registreret Bruger
  
 

Join Date: Nov 2007
Stillinger: 22
Question Uddrag numre fra en streng og opbevare i variabler

Hi All,

Er det muligt i Unix shell script til at hente numre fra en streng, der indeholder ".", Såsom;

5.2.314

Og gemme dem i variabler, så;

var1 \u003d 5
var2 \u003d 2
var3 \u003d 314

På forhånd tak for enhver hjælp nogen kan give

dave
  #2 (permalink)  
Old 11-12-2007
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
narkoman
  
 

Join Date: Jan 2007
Beliggenhed: Варна, България / Milano, Italia
Indlæg: 2.926
Med zsh:

Code:
zsh-4.3.4% s="5.2.314"
zsh-4.3.4% a=(${(s:.:)s})
zsh-4.3.4% print $a[1]
5
zsh-4.3.4% print $a[3]
314

Med ksh93/bash:

Code:
bash 3.2.25(1)$ s="5.2.314"
bash 3.2.25(1)$ set -- ${s//./ }
bash 3.2.25(1)$ echo $1
5
bash 3.2.25(1)$ echo $3
314

  #3 (permalink)  
Old 11-12-2007
V3l0 V3l0 is offline
Registreret Bruger
  
 

Join Date: Nov 2007
Location: Belgien & Frankrig
Stillinger: 70
Mere rustikke, mere kompliceret, men kører anywere jeg tror :


Code:
#!/bin/ksh

a="5.2.314"
i=1

while [ "$a" != "" ]
do
        x[$i]=$(echo $a | cut -d. -f1)
        typeset x$i=${x[$i]}
        ((i=i+1))
        a=$(echo $a | cut -s -d. -f2-)
done

echo "x1=$x1, x2=$x2, x3=$x3"

  #4 (permalink)  
Old 11-13-2007
lione.heart lione.heart is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 13
#! / bin / ksh

str \u003d "5.2.314"

Var1 \u003d `echo $ str | awk-F \. '(print $ 1)' `
Var2 \u003d `echo $ str | awk-F \. '(print $ 2)' `
Var3 \u003d `echo $ str | awk-F \. '(print $ 3)' `

echo "$ var1 $ var2 $ var3"



nyde
  #5 (permalink)  
Old 11-13-2007
summer_cherry summer_cherry is offline Forum Advisor  
Registreret Bruger
  
 

Join Date: Jun 2007
Location: Beijing Kina
Posts: 1.098
awk

Hej,

Kode:

Code:
echo 5.2.3.314 | awk 'BEGIN{FS="."}
{
for (i=1;i<=NF;i++)
print "var"i"="$i
}'

OUTPUT:

Code:
var1=5
var2=2
var3=3
var4=314

  #6 (permalink)  
Old 11-13-2007
prowla prowla is offline
Læs Kun
  
 

Join Date: Nov 2007
Stillinger: 165
I et script (ksh):

i \u003d 1
echo 5.2.314 | sed 's / \. / / g' | while read n
gøre
echo "var $ i \u003d $ n"
Lad I \u003d I 1
gjort
Closed Thread

Bogmærker

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 12:21 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