- 论坛徽章:
- 0
|
本帖最后由 q1307405258 于 2012-04-19 12:22 编辑
需求如下:
判断
read -s passwd
输入的字符串中是否包括大写字母、小写字母、数字、特殊字符 特殊字符包括( ~ ` @ # $ % ^ & * - _ = + | \ ? / ( ) < > [ ] { } " , . ; ' !)
有木有啥好的办法,求高人帮助
使用echo $passwd |grep [0-9]|grep [a-z]|grep [A-Z] |grep -E [~@#%+-=\/\(_\)\*\&\<\>\[\"\;\'\|\$\^\?\!.\{\}\`/\,]这样发现特殊字符校验不通过。 问题出在哪呀,来个高人指导指导 谢谢
多谢了各位已经用了个笨方法实现了
echo $passwd |grep [0-9]|grep [a-z]|grep [A-Z] |grep -E "[~]|[@]|[#]|[$]|[%]|[&]||[-]|[_]|[=]|[+]|[|]|[\]|[?]|[/]|[(]|[)]|[<]|[>]|[[]|[}]|[,]|[.]|[;]|[']|[\`]|[\^]|[{]|[!]|[\"]" |
|