1、变量中字符的长度:${#VARNAME}
2、变量赋值:
${parameter:-word}:如果parameter为空或未定义,则变量展开为“word”;否则,展开为parameter的值
例子:
给出A=3
echo ${A:-30}
此时echo出的值为
3
删除A=3时
unset A
echo ${A:-30}
此时echo出的值为
30
${parameter:offset:length}:取字串,从offset处的后一个字符开始,取了能体会长的字串;
3、脚本配置文件
/etc/rc.d/init.d/服务脚本
服务脚本支持配置文件:/etc/sysconfig/服务脚本同名的
如何让配置文件生效:
例子:
写一个脚本
vim aa.sh
echo不出来任何内容
然后再写个配置文件
vim aa.sh
给一个权限 再执行即可
4.局部变量
local VAR_NAME=
当用函数编程时,定义变量起冲突时,要用local定义变量
5.命令mktemp
创建临时文件或目录
mktemp /tmp/file.XX
-d:创建为目录
当两个临时文件起冲突重名时:
mktemp /tmp/file.XX
其例子如图:
6.信号
kill -SIGNAL PID
1:HUP
2:INT:终止
9:KILL
15:TERM
脚本中,能实现信号捕捉,但9和15无法捕捉
Ctrl+c:SIGINT
trap命令:可以直线信号捕捉
trap `COMMAND` 信号列表
例子:
写一个脚本:每隔两秒钟就显示一下当前时间:
vim aaa.sh
捕捉信号时,在前一个脚本中加trap ` `INT 即可
7,一行执行多个语句,语句间用分号分隔
一行执行多个语句时,在语句之间加个“;”,即表示执行两个命令。