嵌入式操作系统shell编程

一、实验目的

1. 了解和熟悉创建并使用脚本的步骤;

2.  熟悉bash的控制结构;

3. 掌握shell编程的基本方法;

4. 掌握Shell脚本的变量和参数;

5. 掌握Shell脚本的分支和循环控制流程。

二、实验内容

1. 编写一个最简单的shell脚本并运行;

2. 编写一个能读入位置参数、实现任一四则运算功能的shell脚本(函数)并运行;

3. 编程:从键盘输入数字计算累加和,如果是负数则将其转换成正数后累加,一直到输入“end”结束。

三、实验器材(设备、元器件)

(一)装有VMware软件的计算机一台(虚拟机软件)

(二)系统镜像文件

四、实验步骤

1、编写步骤

1)创建一个简单的列目录和日期的shell脚本并运行;

2)编辑脚本内容 输入下列指令 vi xxx.sh,创建一个新文件;

3)按回车键将光标移到一个新行,再按esc键,再用shift加:wq保存退出即可

4)  输入指令显示文件权限,将脚本文件修改成可执行 chmod 777 xxx.sh;

5)  执行脚本文件,输入脚本文件名字 ./xxx.sh或 bash xxx.sh。

2、shell脚本编写

 shell 脚本的编写语法如下:

1)程序往往以#!/bin/bash 的行开始,这一行不是注释而是 shell 脚本的标识;

2)以#作为语句的注释;

3)shell 变量,命令,关键字语法等。

2.1 shell变量

1)shell 变量中允许建立变量存储数据,但是不支持数据类型,所有赋值给变量的值都解释为一串字符;

2)变量的定义格式:

变量名称=值。 #变量赋值时,等号两边不能有空格

变量的调用:取shell变量的值,$变量名;

2.2 标准变量或环境变量

1)自定义变量:由用户自己定义、修改和使用;
2)环境变量:由系统维护,用于设置工作环境;
3)位置变量:通过命令行给脚本程序传递参数;
4)预定义变量:Bash中内置的一类变量,不能直接修改;

5)常见环境变量如下:

  a. HOME :用户主目录 PATH 文件搜索路径;

  b. PWD :用户当前工作目录;

  c. PS1、PS2 :默认提示符($)及换行提示符(>);

  d. LOGNAME:指登录主机的用户名称;

  e. HOSTNAME :主机名字,也就是这个系统的名字;

  f. USER:指当前用户名字。

3、执行shell脚本

  要创建一个shell脚本,我们可以使用任何编译器,比如vim在文本文件中编写它,习惯保存的文件后缀为.sh(仅为了识别是shell脚本文件);

4.Shell程序和语句

  一个shell程序由零或多条shell语句构成,shell语句包括3类:说明性语句、功能性语句和结构性语句;

4.1说明性语句

  说明性语句即注释行,注释行可以出现在程序中的任何位置,即可以单独占一行,也可以接在执行语句后面。以#号开始到所在行的行尾部分的语句是指说明性语句都不被解释执行;

实验一:编写一个最简单的shell脚本并运行;

编写步骤如下:

1)编辑脚本内容 vi hf1.sh,编写完成后再按esc键,再用shift加:wq保存退出即可;

2)将脚本文件修改成可执行  chmod 777 hf1.sh;

3)执行脚本文件  ./hf.sh  执行结果如下:

4.2功能性语句

1)键盘读入变量值

  在shell程序中,变量的值可以作为字符串从键盘读入,其格式为:read变量;

2)算数运算符

  算数运算符expr 主要是用于简单的整数计算,包括 加(+)减(-)乘(\*)除(/)取余(%)等操作;

格式:expr 变量1 运算符 变量2 [运算符 变量3];

3)数值运算法

  a. 用expr改变运算顺序。可以用echo `expr 1 +2`来输出1+2的结果,用expr表示后面的表达式为一个数学运算。需要注意的是,`并不是一个单引号,而是“Tab”键上面的那个符号;

  b. 用let指示数学运算。可以先将运算的结果赋值给变量b,运算命令是b=let 1 + 2。然后用echo$b来输出b的值。如果没有let,则会输出1+2;

  c. 用$[]表示数学运算。将一个数学运算写到$[]符号的中括号中,中括号中的内容将先进行数学运算。例如命令echo$[1+2],将输出结果3;

实验二:编写一个能读入位置参数、实现任一四则运算功能的shell脚本(函数)并运行;

1)方法一

2)方法二

4.3结构性语句

1)while循环格式
while((循环条件))
do 循环体
done

只要表达式为真,do和done之间的操作就一直会进行。

2)获取输入

read: 在shell表示 从键盘上获取输入

read  str -->从键盘上获取输入的数据,存储到变量str

read -p "input data:" val1 val2 val3 -->从键盘上获取三个整数,并且分别保存到变量val1  val2 val3中

实验三:从键盘输入数字计算累加和,如果是负数则将其转换成正数后累加,一直到输入“end”结束;

五、实验数据及结果分析

1.实验一:编写一个最简单的shell脚本并运行

2. 实验二:编写一个能读入位置参数、实现任一四则运算功能的shell脚本(函数)并运行;

3. 实验三:从键盘输入数字计算累加和,如果是负数则将其转换成正数后累加,一直到输入“end”结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值