Shell里的流程控制、Shell里的函数及脚本调试
2015-05-15 16:49
573 查看
if语句:
首先了解几个知识:
[ -f “somefile” ] :判断是否是一个文件
[ -x “/bin/ls” ] :判断/bin/ls是否存在并有可执行权限
[ -n “$var” ] :判断$var变量是否有值
[ “$a” = “$b” ] :判断$a和$b是否相等
示例代码:
务必注意,[]比较的时候其括号前后的空格别忘了! = 等号前后也要有空格也要注意;
&& 和 || 操作符:
示例代码:
case 语句:
须知:
case表达式可以用来匹配一个给定的字符串,而不是数字(可别和C语言里的switch…case混淆)。
示例代码:
特殊变量$1,该变量包含有传递给该脚本的第一个参数值,也就是说,$1 就是字符串 articles.zip。
select 语句:
select表达式是bash的一种扩展应用,擅长于交互式场合。用户可以从一组不同的值中进行选择:
示例代码:
如果 以上脚本运行出现 select :NOT FOUND 将 #!/bin/sh 改为 #!/bin/bash 该脚本的运行结果如下:
while/for 循环:
示例代码:
输出:
select 语句:
须知:select表达式是bash的一种扩展应用,擅长于交互式场合。用户可以从一组不同的值中进行选择:
示例代码:
执行脚本后,等待用户输入,然后在终端输入你的选择,回车,如下显示:
函数:
如果你写过比较复杂的脚本,就会发现可能在几个地方使用了相同的代码,这时如果用上函数,会方便很多。函数的大致样子如下:
示例代码:
脚本调试:
最简单的调试方法当然是使用echo命令。你可以在任何怀疑出错的地方用echo打印变量值,这也是大部分shell程序员花费80%的时间用于调试的原因。Shell脚本的好处在于无需重新编译,而插入一个echo命令也不需要多少时间。shell也有一个真正的调试模式,如果脚本”strangescript”出错,可以使用如下命令进行调试:
sh -x strangescript
上述命令会执行该脚本,同时显示所有变量的值。shell还有一个不执行脚本只检查语法的模式,命令如下:
sh -n your_script
首先了解几个知识:
[ -f “somefile” ] :判断是否是一个文件
[ -x “/bin/ls” ] :判断/bin/ls是否存在并有可执行权限
[ -n “$var” ] :判断$var变量是否有值
[ “$a” = “$b” ] :判断$a和$b是否相等
示例代码:
&& 和 || 操作符:
示例代码:
须知:
case表达式可以用来匹配一个给定的字符串,而不是数字(可别和C语言里的switch…case混淆)。
示例代码:
select 语句:
select表达式是bash的一种扩展应用,擅长于交互式场合。用户可以从一组不同的值中进行选择:
示例代码:
须知:select表达式是bash的一种扩展应用,擅长于交互式场合。用户可以从一组不同的值中进行选择:
示例代码:
如果你写过比较复杂的脚本,就会发现可能在几个地方使用了相同的代码,这时如果用上函数,会方便很多。函数的大致样子如下:
最简单的调试方法当然是使用echo命令。你可以在任何怀疑出错的地方用echo打印变量值,这也是大部分shell程序员花费80%的时间用于调试的原因。Shell脚本的好处在于无需重新编译,而插入一个echo命令也不需要多少时间。shell也有一个真正的调试模式,如果脚本”strangescript”出错,可以使用如下命令进行调试:
sh -x strangescript
上述命令会执行该脚本,同时显示所有变量的值。shell还有一个不执行脚本只检查语法的模式,命令如下:
sh -n your_script
相关文章推荐
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!
- 【Shell 编程基础第二部分】Shell里的流程控制\函数及\脚本调试
- 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法
- Linux基础-shell脚本知识整理和脚本编写----------变量、运算符、流程控制、函数、计划任务(发送邮件)
- Shell脚本学习笔记(四)--流程控制
- Shell学习笔记(13)-流程控制之函数
- 几类脚本的流程控制语句(shell,python,lua)
- 【shell脚本】函数:控制颜色、定位、居中显示
- shell脚本控制流程
- Postman高级应用——流程控制、调试、公共函数、外部数据文件
- shell脚本和流程控制
- shell流程控制&函数
- shell脚本流程控制
- Shell脚本结构流程控制
- Postman高级应用——流程控制、调试、公共函数、外部数据文件
- shell 脚本之程序流程控制命令(1)
- Shell 脚本-6- 流程控制之判断分支
- shell脚本流程控制