一 . 单引号和双引号
1.单引号和双引号两者之间的作用和区别:
单引号('') : 单引号中的所有字符均作为普通字符处理 , 即原样输出 , 无法调用变量的值 .
双引号("") : 双引号中会自动识别特殊字符 , 即调用变量的值 , 如$ ,\n换行符 , \t tab键等特殊字符 .
实例说明: 赋值给变量 x 一个值 , 分别输出 '$x' 和 "$x"
再举个例子说明: 分别在命令行中输入: echo -e '${x}_\n_welcome_to\t_51cto' 和 echo -e "${x}_\n_welcome_to\t_51cto"
说明 : echo 的 -e 选项是允许识别\n换行符 , \t tab键 , \r回车符等特殊字符 , ${x}通常等于$x , 那么什么时候需要将变量名用{}括起来呢?
答 : 当变量名后面紧贴着其他字符时 , 为了避免歧义 , 就需要将变量名用{}括起来二 . shell的函数功能和定义
1. 函数功能 : 完成特定功能的代码块(段)
在shell中定义函数可以使用代码模块化 ,便于复用(重复使用)代码 , 函数必须先定义才可以使用
2. 函数的定义 :
方法一:
函数名(){
函数要实现的功能代码
}
方法二:
function 函数名{
函数要实现的功能代码
}
通过 function , network 服务控制脚本可以看到其中内容 , 其中就有函数 , 比如cat -n /etc/rc.d/init.d/functions | more 查看:
通过介绍下面的 case 命令后 ,可以举例说明函数作用及用法 ...
三 . case 命令介绍
1. 功能定义 : 根据变量的取值不同 , 执行不同的操作命令
2. 语法格式 :
case $变量名 in
值一)
要实现功能的代码 ;;
值二)
要实现功能的代码 ;;
值三)
要实现功能的代码 ;;
....
值n)
要实现功能的代码 ;;
esac
实例: 编写一个名称为/sh/install.sh 的脚本 , 要求显示一个主菜单界面 , 提示用户输入选项 , 回车后确认执行指定选项的命令操作:
方法一 : vim /sh/install.sh 输入以下内容 :
使用 bash /sh/install.sh运行脚本后 ,会显示一个菜单 , 输入对应的编号 , 即会出现相应的命令
方法二 : 使用函数定义 , 并调用函数
上图中定一了一个名为_NFS , 作用是检测安装nfs服务的函数 , 再在case命令值一中 , 调用_NFS函数 , wq出去后运行 , 输入编号 1 , 即可安装nfs服务
以上就是关于case命令和shell函数的使用 !!