shell 脚本补充内容
一、在工作中的一些注意事项
1、在工作中,需要注意shell的版本;如果版本过低,有漏洞;需要及时升级shell 的版本。
2、脚本的第一行要习惯性加上相应的解释器的标识;要养成写上注释(注释前加#,最好不要用中文注释,因为在不同字符集的系统会出现乱码)的习惯,这样方便自己和他人查看脚本。
3、脚本中的符号都是英文下的符号,这一点要注意,要不以后会给自己增加很多麻烦。
4、如果使用vim编辑器写内容非正常退出,下次在编辑就会出现无法写入并保存。如果遇到这种情况,就是因为你的非正常退出,是的源文件产生了一个或多个缓存的文件。解决办法就是用ls -a 或vim -r 查看产生的缓存的文件,然后用rm -rf 删除(但是需要注意的是缓存文件前要加.)
二、shell的环境变量
1、变量就是用一个固定的字符串代替更多更复杂的内容,这个内容可能还会包含变量和路径,字符串等其他内容。
2、变量分为环境变量和局部变量
(1)环境变量(也叫全局变量)可以在创建他们的shell及派生出来的子shell中使用。环境变量还可以分为自定义的和bash内置的。环境变量用于定义shell命令的运行环境,所有的环境变量都是全局变量,可用于所有子进程中的各类应用,但要注意crond定时任务除外。通常所有环境变量均为大写,环境变量应用与进程前,都应该用export命令导出。
(2)局部变量(也叫普通变量)只能在创建他们的shell函数和shell脚本中使用。
3、变量名及内容
(1)变量名只能由字母、数字、下划线组成,且以字母打头。
(2)变量中“=”是赋值。
(3)打印变量,变量前加$符号,变量后拼接字符,要用大括号括起来。
三、shell的结构语句
1、if条件语句
(1)if单条件语句
if [ 条件 ];then
指令
fi
(2)if多条件语句
if [ 条件1 ];then
指令1
elif [ 条件2 ];then
指令2
else
指令n
fi
2、case 结构条件句
case "字符串变量" in
值1)
指令1
;;
值2)
指令2
;;
*)
指令
esac
3、循环语句
(1)while条件语句
while 条件
do
指令
done
(2)for循环结构语法
for 变量名 in 变量取值列表
do
指令
done
浙公网安备 33010602011771号