linux shell毕业设计,linux下shell 程序设计_毕业课程设计.doc

linux下shell 程序设计

shell编程

教学要点

深入理解shell概念。

掌握linux下shell程序设计流程。

理解shell程序与C程序设计的区别。

掌握shell程序设计中用户变量和表达式的使用方法。

一.Shell编程概述

问题1:请各位同学在home目录下创建5个目录,目录名称分别为student0,student1,student2,student3,student4.且修改它们的权限为所有用户都具有完全的操作权限。

问题2:请各位同学在home目录下创建100目录,目录名称为class1—class100.

解决办法:通过一个shell脚本程序来实现,程序如下,用vi编辑器建立一个firstshell文件,内容如下:

#!/bin/bash //指明该程序被那个shell来执行!

cd /home/shelldir //进入home/shelldir目录

mkdir newdir //在shelldir目录下新建newdir目录

i=0 //给变量i赋初值

while [ $i –lt 50 ]; do //循环,判断i是否小于50,成立继续循环

let i=i+1 //让i变量值增加1

mkdir /home/shelldir/newdir/student$i //在newdir目录下创建student1到student50

chmod 754 /home/shelldir/newdir/student$i

done

保存文件,退出vi,通过执行#chmod a+x firstshell修改文件权限,赋予文件可执行权限,通过#./firstshell或者#/bin/bash firstshell来执行程序,查看程序运行结果。

程序说明:

1.程序必须以下面的行开始(必须方在文件的第一行):

#!/bin/bash

符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在 这个例子中我们使用/bin/bash来执行程序。

2.当编辑好脚本时,如果要执行该脚本,还必须使其可执行。要使脚本可执行,必须为脚本添加可执行权限。

#chmod a+x filename

3.输入:# ./filename 来执行脚本程序。

如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi等来编写我们的shell程序。Linux中有好多中不同的shell,通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。这些脚本同样可以在其他bash中使用。

注:1.可以通过#echo $SHELL查看当前系统所运行的shell类型;

2.可以通过#cat /etc/shells查看系统上所有的shell。

3.可以直接通过输入shell名来运行新的shell。比如#ash,启动ash。

二.为什么要进行shell编程

在Linux系统中,虽然有各种各样的图形化接口工具,但是shell仍然是一个非常灵活的工具。Shell不仅仅是命令的收集,而且是一门非常棒的编程语言。可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。

三.shell程序组成

Shell程序有注释,shell命令,变量,表达式,流程控制等组成。

1.shell程序注释

在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。初学者要养成在程序中使用注释的习惯。如果使用了注释,那么即使相当长的时间内没有使用该脚本,也能在很短的时间内明白该脚本的作用及工作原理。这种习惯对一个优秀的技术人员来说非常重要

2.命令

a.linux下常用的各类命令,比如ls,cd,mkdir,pwd,rm,rmdir等等。

b.shell中的算术运算。如 let i=i+1

3.变量

在其他编程语言中可以使用变量。在shell编程中,也有各种变量,特别是在C语言中,变量使用之前一定要先定义,然后再使用;shell程序中也可以使用各种变量,shell编程中所有的变量都由字符串组成,并且shell程序中的变量不需要提前进行声明定义,可以直接使用。如程序中所示:

i=0 //变量名=值

取出变量值可以加一个美元符号($)在变量前面:$i

Shell脚本中除了用户自己定义的变量仅在程序内有效,还有系统定义的变量,比如环境变量。由export关键字处理过的变量叫做环境变量。我们不对环境变量进行讨论,环境变量至关重要,在后面章节中会详细介绍。

4..shell脚本程序中的表达式

表达式是shell脚本中必不可少

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值