shell

用手机扫此二维码:
以下结果由提供:
百科词条:
1234567890ABCDEFGHIJKLMNabcdefghijklmn!@#$%^&&*()_+.一三五七九贰肆陆扒拾,。青玉案元夕东风夜放花千树更吹落星如雨宝马雕车香满路凤箫声动玉壶光转一夜鱼龙舞蛾儿雪柳黄金缕笑语盈盈暗香去众里寻他千百度暮然回首那人却在灯火阑珊处
复制  |  搜索  |  翻译  |  百科  |  分享  |  二维码
文字已复制
分享至: ×

 

 

shell

编程入门指南(三)

 

                                                  

---

大头针

 

三、控制结构:

 

C

的程序结构与

Shell

的程序结构大同小异。

 

3.1

选择结构:

 

1.If

结构

 

if [ conditon1 ] 

then 

    statments1 

elif [ condition2 ] 

then 

    statments2 

else 

    statments3 

fi 

  

2.case

结构

 

  

case variable in 

  value) command1 

      exit 0 

      ; 

  value) command 2 

           exit 0 

      ; 

esac 

  

3.2.

循环结构:

 

1.for

结构

 

for name [in list] 

do 

  statements using $name 

done 

1.list

应该是一系列由空格分隔的字符序列(单词)

,省略

in list 

时默认为

 

  

$@(

命令行的参数列表

2.for

循环执行的次数取决于列表

list

中单词的个数

 

3.

for

循环体中一般要出现变量

$name,

但也可以不出现。

 

  

2.

循环结构:

until

 

until [ condition ] 

do 

  statments 

done 

  

condition 

条件成立退出循环

 

  

  

3.

循环结构:

while

循环

 

while [ condition ] 

do 

   statments 

done 

  

条件不成立退出循环

 

备注:

 

还有一些经常与循环结合的命令:

比如

break 

[n]

continue  [n]

C

break 

Continue

功能基本一致。只不过

break

可以选择跳出几层循环、

continue

可以选择跳过几个回合。

 

 

 

 

shell

编程入门指南(四)

 

                         

---

大头针

   

 

四、命令

 

熟悉了上面三部分内容对于我们写

shell

程序奠定了基础。但巧妇难为无米之炊

 

  

shell

程序的主体内容是

shell

所提供的命令:例如

 cp ls useradd

 

如果你没有系统学习过

shell

的命令,你是写不出来

shell

程序的。

 

  

最后得出结论:

 

变量

+

条件

+

程序结构

+shell

命令

==shell

程序。

 

  

五、实例:

 

1.

 

编写

shell

程序,

实现自动增加

50

个账号的功能。

账号名为

stud1

stud50

 

 

 

#! /bin/bash 

#useradd.sh 

  

#

i

这属于变量

 

i=1 

  

#while 

这属于程序结构

 

while [ $i -le 50 ] 

do 

  #cat ...

命令的含义是使用管道以及正则表达式查看

passwd

文件中是否存在类似

#stud1-stud50

之间的用户

这属于

 shell 

命令

 

 # -z 

测试字符串是否为空

.

这属于条件

 

       if [ -z "`cat /etc/passwd|grep "stud$i\>"`" ] 

       then 

              useradd stud$i 

              echo "useradd success!" 

       else 

              "user stud$i exist!" 

       fi 

       

done 

  

最终验证了我的结论:

 

shell

程序

=

变量

+

条件

+

程序结构

+shell

命令。

 

一开始接触

linux 

shell

,大多都认为比较难学。但按照上面的学习思路,很快你就会学会

shell

编程。

 

  

六、补充知识:

 

函数:

 

Shell

也提供了函数机制。格式如下:

[function] NAME() {command-list;} 

返回值:

return [n]

 

将函数的返回值设定为

n .

若不指定

n

值,则使用

return 

之前所执行的最后一个命令的状

态值。

 

$?

 

执行后命令后的状态

 

实例:

 

#

/bin/bash 

function psgrep 

       ps 

aux|grep $1 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值