您的位置:首页 > 运维架构 > Shell

shell 脚本实现 限定输入内容

2012-12-14 10:53 387 查看
#!/bin/sh
# validAlphaNum - Ensures that input consists only of alphabetical
# and numeric characters.

validAlphaNum()
{
# Validate arg: returns 0 if all upper+lower+digits, 1 otherwise

# Remove all unacceptable chars
compressed="$(echo $1 | sed -e 's/[^[:alnum:]]//g')"

if [ "$compressed" != "$input" ] ; then
return 1
else
return 0
fi
}

# Sample usage of this function in a script

echo -n "Enter input: "
read input

if ! validAlphaNum "$input" ; then
echo "Your input must consist of only letters and numbers." >&2
exit 1
else
echo "Input is valid."
fi

exit 0


 

其中 sed -e 's/[^[:alnum:]]//g'  是过滤除数字和字母以外的内容

 

if [ "$compressed" != "$input" ] ; then 此处是给函数传参数input 的值

 

附:

过滤只留大写字母  空格 逗号 句号         

sed 's/[^[:upper:] ,.]//g'

过滤只留数字 圆括号 空格 -

sed 's/[^[:digit:]\(\) -]//g'

过滤只留数字

sed 's/[^[:digit:]]//g'

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Shell 脚本