一、Shell 脚本运行:
方法1:
chmod +x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
举例:
touch 一个新文件test1.sh,可以看到没有执行权限,那么就无法运行脚本
所以执行chmod +x ./test1.sh
接着执行./test1.sh
方法2:
直接调用解释器运行shell脚本,这种情况无需在文件指定解释器
/bin/sh test.sh /bin/php test.php
二、Shell变量
1.常规变量
a="test"
引用变量:$a
2.只读变量
使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。
3.删除变量
使用 unset 命令可以删除变量
unset name
4.变量类型
运行shell时,会同时存在三种变量:
- 1) 局部变量 局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。
- 2) 环境变量 所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。
- 3) shell变量 shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行
三、Shell字符串
1.单双引号区别
存在单引号字符串和双引号字符串的区别,单引号字符串会原样输出(无法引用变量),双引号可以引用变量进行输出。
2、拼接字符串
3.获取字符串长度
4.提取字符串
以下实例从字符串第 3个字符开始截取 5个字符:
5.查找字符串
查找字符 r或 o 的位置(哪个字母先出现就计算哪个):
四、Shell数组
1.数组定义和读取
bash支持一维数组,不支持多维数组,不限定数组大小。类似于 C 语言,数组元素的下标由 0 开始编号。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于 0。
@表明输出全部数组内容
2.获取数组的长度
五、Shell注释
1.以 # 开头的注释
如果在开发过程中,遇到大段的代码需要临时注释起来,过一会儿又取消注释,怎么办呢?每一行加个#符号太费力了,可以把这一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果。
2.多行注释
多行注释还可以使用EOF或者'或者!
(1) :<<EOF 注释内容... EOF (2) :<<' 注释内容... ' (3) :<<! 注释内容... !
未完待续。