目录
实验目的:通过练习shell脚本相关命令,能够读懂并编写简单的shell脚本。
1、编写简单的hello world脚本,查看脚本内容,并运行
3、使用test命令对两个数值比较(等于、小于、大于等于),注释说明含义。
4、使用test命令对两个字符串比较(等于、非空、小于),注释说明含义。
6、使用[] 对文件类型、文件权限、文件比较等进行练习。注释说明含义。
7、使用if-elif结构完成功能。需查看脚本内容,并运行。
8、结合case-in和函数,完成简易计算器。(选择运算符,再输入数)。
实验名称:Shell脚本相关命令
实验目的:通过练习shell脚本相关命令,能够读懂并编写简单的shell脚本。
实验内容:
1、编写简单的hello world脚本,查看脚本内容,并运行
2、练习加减乘除、比较等基本的算术运算。
采用“$(( exp ))”进行整数间的算术比较运算
运算符包括“<” “>” “<=” “>=” “==” “!=”
如果比较结果为真,表达式返回1,否则返回0
3、使用test命令对两个数值比较(等于、小于、大于等于),注释说明含义。
-eq 等于则为真 -ne 不等于则为真
-gt 大于则为真 -ge 大于等于则为真
-It 小于则为真 -le 小于等于则为真
4、使用test命令对两个字符串比较(等于、非空、小于),注释说明含义。
-eq 等于则为真 -ne 不等于则为真
-gt 大于则为真 -ge 大于等于则为真
-It 小于则为真 -le 小于等于则为真
5、使用test命令进行布尔运算,注释说明含义。
! 非运算,表达式为 true 则返回 false,否则返回 true。
-o 或运算,有一个表达式为 true 则返回 true。
-a 与运算,两个表达式都为 true 才返回 true。
6、使用[] 对文件类型、文件权限、文件比较等进行练习。注释说明含义。
-r file 检测文件是否可读,如果是,则返回 true。
-w file 检测文件是否可写,如果是,则返回 true。
-x file 检测文件是否可执行,如果是,则返回 true。
-u file 检测文件是否设置了 SUID 位,如果是,则返回 true。
-g file 检测文件是否设置了 SGID 位,如果是,则返回 true。
-k file 检测文件是否设置了粘着位(Sticky Bit),如果是,则返回 true。
7、使用if-elif结构完成功能。需查看脚本内容,并运行。
8、结合case-in和函数,完成简易计算器。(选择运算符,再输入数)。
拓展实验:
对函数传递参数大于、等于、小于所需参数的三种情形分别试验。
思考与讨论
1、脚本三种运行方式的区别。
第1种方式
设置脚本文件的可执行权限,指定脚本文件的绝对路径或相对路径直接执行。
第2种方式
使用sh或bash命令执行脚本文件,sh其实是bash的链接文件,不管脚本文件有没有可执行权限,都可以采用这种方式执行。
第3种方式
使用source命令或点运算符“.”执行脚本文件,后跟脚本文件名。
区别:前两种方式,脚本文件在当前bash进程的子进程中执行
第3种方式则是直接在当前bash进程中执行
实验总结
通过这次实验,我知道了有关shell脚本命令,但是对编写代码还是有点不熟悉。
错误:
纠错:最后一行末尾没加 ”