Linux系统中shell脚本需要注意的那些点
之前在博客上也写过一篇shell脚本简单语法规则(传送门),通过对Linux脚本的一些练习,自己也在使用中出现了很多的问题,现在来一一整理一下。
1、shell脚本判断条件使用正则表达式
举个例子把,判断传来的参数是不是符合密码规范(至少6位的数字、字母或下划线组成):
这个密码的规范很简单,使用正则表达式也就很简单可以实现了(不会正则表达式的请自行百度,网上太多,这里就不赘述了):
^\w{6,}$
而在使用正则表达式进行判断的时候,会出现很多的问题,再次,请允许我先把代码写出来再来进行叙述其中的点
#!/bin/sh
reg='^\w{6,}$'
if [ a$1 == a ] ; then
n="请输入参数"
elif [[ "$1" =~ $reg ]] ; then
echo "是密码"
else
echo "不是密码"
fi
再来贴一张结果截图,
好了,开始:①if判断必须使用[[]]
进行包裹,否则会出现报错
②判断符号必须是=~
,不能是==
,因为=~
表示后面是正则表达式,而==
后面是通配符
②此处的'^\w{6,}$'
必须先赋值给一个变量,不然直接写在判断条件里面会不起效果
③在使用$reg
的使用千万不要加引号,否则也会不起效果
③在使用$reg
的使用千万不要加引号,否则也会不起效果
对于上面的四点,也是我在使用的时候自行总结出来的,大家可以可以自己动手试一试,加深印象。项目持续更新中