空间管理 您的位置: Linux宝库 » fish » 日志

学习shell(5)

上一篇 / 下一篇  2008-06-01 23:42:09

2Ty/z/J.w${"s3R0                                           控制流结构

?\ h!d#T*m4Q @#o0

P*E"G j,T,X4J4Q01.if 语句Linux宝库w-uF8Oq;i

+P3Aw| }C1sg4~1{0格式用法如下:

|#OCs#@.V#X8c0 Linux宝库$D/U8@/l|!~C c

if  条件1

-o4i.cV.U0 Linux宝库WI!Fj F)PT XL4n

then  命令1Linux宝库mZ^%h&HInl5z@,{

Linux宝库C;Y,A2x'p\OK

elif  条件2Linux宝库fk(o:p8P%iA:~

Linux宝库5O9T^V v[#\

then   命令2Linux宝库f b/{#M#b9k4I+A7z

.N\QFI0else   命令3Linux宝库0PV,ev}

Linux宝库2Uh} Hu8V o*a$w

fi  //必须以fi 结束完成

A8@ Z'F.x"l\0 Linux宝库^O/} FQz PQAuE

四个简单的例子:Linux宝库1f D)n5L!hZ ~

_.LY-pS0#!/bin/bashLinux宝库-\3u gV0_DIH,bg

d3Bh"zlS0#iftest1

K\pIn-w0 Linux宝库wZC ][

if [ "10" -lt "12"]Linux宝库PygHcFC k.q-O

Linux宝库mNu?2o)x@d

thenLinux宝库g] WbGC

Linux宝库0uv&o0q0B8j i

echo "Yes, 10 is less than 12"

7s1E*OCl}.Sq+L0

e^E9Ftf E0fi

9m@6F8k,mA0 Linux宝库L#W9Ji]3F&E#Q

#!/bin/bash

*S8Q mF&X)j0 Linux宝库7c3x;U)V F(v^h gF

#iftest2Linux宝库+c#|jW4P(u4O

&_s9Ec2^3eqf6W0echo  -n "Enter your name:"

h? cjQ*f#p|)V0 Linux宝库${X!tE#~5C

read name

)e&Pg,g8]^D0 Linux宝库$G%q9Eg3E

if ["$name" == "" ]; then

g1c2x;C.]/YP-r0 Linux宝库9`"R$S i r5\Ya

echo "You did not enter any information"

%AL Dl5@O9y,V4g0 Linux宝库Vn'|+q'\W

else

st.R-eN%nh&n0

a"@4lsF9oh7dHNm0echo "You Name is ${name}"

;[ e p)B5]n!W"C0

y0Z KU ]M5ck0fiLinux宝库I k5UDdde

Linux宝库2G)M/_!{v-z

#!/bin/bash

B S"B.X$Q0 Linux宝库@4}%cB1b B1{'o

#ifcpLinux宝库QX3gDmLP%b7EO3YK

Linux宝库"Q-H!o'}4vA(v!R

if cp myfile.bak myfile; then

xp5G,h r!]1S,A#qJ0 Linux宝库vp,U]8z G`b+A R

echo "good copy"Linux宝库M)_bTN5Z#B"pk0d

1A[4B,VS ^P0else

1NMx1?r s6@V0

5[L;N J2Jg,R@$bqv0echo "'basename $0':error could not copy the file" >&2Linux宝库hV!co_A*E

`m b(z}/Z0fiLinux宝库 ^L4YK&b LU h%Quf?

Linux宝库W}U$e,A&p[ ^l

#!/bin/bashLinux宝库^z5M(`2]#FX H'F4S

:]2g/c@7zyEfQ/Z.P_T0#ifelif

4ws'Q4D7IkG-{0

D)Ya7MXAGG;w0echo -n "Enter your name:"

*@@X7y;i+R"` B%s0 Linux宝库7Hn0a E4]7Wn5F

read name

a'W ^FU7N;Y1F0

qS#R*?Q J;F zD0if [-z $name] || ["$name"=""]; thenLinux宝库0XsQ Q'W

Linux宝库C[J-z9I ez

echo "You didn't enter  a name"Linux宝库n'? e OF]asrK

Linux宝库4G,aW,b.d,d0Sw})PC

elif ["$name" = "root"]; thenLinux宝库 S?*z({^O N u

z\4W\,~L i:w `W0echo "Hello root"Linux宝库,qZD x(uj~

+b-gV]&l)Q0elif ["$name"="fish"]; thenLinux宝库w!jT3rEf!b r

Linux宝库U V4ER"Kgu

echo "Hello fish"Linux宝库*g;OsAd*r

Linux宝库:?q?7Xy5W

else

0hXt8Z:X.Yi-Z.Uh8h0 Linux宝库+`z:{^4i

echo "You are not root or fish,but hi, $name "Linux宝库J7z&t(N#nINF

Linux宝库tO'{{9LW)sQg#r^

fiLinux宝库^:BC{l

,~:GQd's6R:q02.case语句Linux宝库 |&J.m(o9Uk[?%K

Linux宝库G;fun4q5g

为多选择语句,case取值后面必须为单词in,每一模式必须以右括号结束。取值可以为变量或常数。匹配发现取值符号某一模式后,其间所有命令开始执行直至;;模式匹配符[..]表示类或范围中任意字符Linux宝库(B9P.ZX2s Z

s9C0jR@ k_my0格式及应用如下:Linux宝库&RAO7RC'm$f

A"b7Z4mBfopu0case  值 in

;_(?xnxc:BS0

!T{ CI&f!k)~&l0模式1)Linux宝库3yU-d;q.M@P

9eXY,Bv4j1?7H0命令1

l2i}ya GH1J T0

f|(rx*M"NrdX0;;Linux宝库D]{ @/P

+FcS4^BZ%m!_0模式2)

)\ u[ \F;w`N5K0 Linux宝库#]#p%?*tZ&K

命令2

#vdR{y8t`*K x0 Linux宝库+E%M(K:~.U8_

;;

y,|)`[6vx(b+R4p0

f3jBP^MK4Y0esac

vn7L-[!\da&J5w0 Linux宝库s g H#D(qd

一个简单的例子Linux宝库.c kXK+Ds/zp

%T&VyX)i%QM0#!/bin/bashLinux宝库"M5}&a] D/II~3g

Linux宝库8ob|t6|\ w8j

#casetestLinux宝库S]l5G D1yO/H

Linux宝库mZj!cCL

echo -n "Enter a number from 1 to 3"Linux宝库j sc4|W

(m;`chq @0read numLinux宝库#~3G6NN%[)|W%V:fc

Linux宝库x%I}6z7MmdrB

case $num inLinux宝库#@*E tDI.Os:[

)d V3N\Y{P01)

2e&xgQ4y0 Linux宝库X5R VX3J,x/nE

echo  "You select 1"

R!s8r'O-DS7Ft0

,wDnb+X7H*oOJ;IB0;;

%a \mc\o1|0

9]:D&V:g;vua02)Linux宝库5b dd6Z7Hw&U

aP%rsQ0echo "You select 2"

;P;W#[kXK0 Linux宝库"ed3d&cc+z9tnh

;;

^ ok5m }$W}uG0 Linux宝库G6cCG%[s

3)Linux宝库Hi~c:T)x4`E

Linux宝库]#I s5DPi c?$L

echo "You select 3"Linux宝库aG5d2NX'M

Uo Q![3]i?0;;Linux宝库rF Y@a{ bW8?/r

Linux宝库?5zI5V {7_4^G(kD

y|Y)Linux宝库w@*ib,Jr

`qqBhN5OL0echo "You select $num"

Z$O+W-Xk@Q0 Linux宝库cZb$Ff

;;

Q wm-DA \D0 Linux宝库s*b1z-g\r2hGb7b

*)

C:V3q w/Iy]0

~/Z:k]#~'c VpYZ Z0echo "'basename $0': This is not between 1 and 3 " >&2Linux宝库&w'iR5Qcr

Linux宝库,it'n%}*g ? P

exit;Linux宝库6^5p8V9rVv%a|

Linux宝库f6Dm5P'\r Y

;;

2FQ:{`4v7O[0

"i/rT.k@5rz0esac

v+n8B7Mo9GU%X0

u/aD(X.JV,\(A"H0 Linux宝库W s~fWm

Linux宝库4Em D$k*W[(Bh"m

 Linux宝库sm} [G;w`y


相关阅读:

TAG: Shell SHELL shell 学习

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar