小菜问菜问题了..希望各位帮忙回答
刚学shell编程 问些菜问题1. 如何判断输入是3位数字(就是控制输入只能是3位数字)
2. 如何判断输入格式是前3位是数字第4位是-后4位还是数字
3.如何判断输入只包含空格或者字母
4.如何使当输出写入文件成功后显示"输入成功",而写入不成功时不显示"输入成功"
:?::?: 希望大家不吝赐教 先谢过... :D
Re: 小菜问菜问题了..希望各位帮忙回答
刚学shell编程 问些菜问题1. 如何判断输入是3位数字(就是控制输入只能是3位数字)
正则表达式里表示“3位数字”:
'[0-9][0-9][0-9]'
代码测试:
#!/usr/bin/env bash
read first
echo $first |grep '[0-9][0-9][0-9]' >/dev/null
echo $?
2. 如何判断输入格式是前3位是数字第4位是-后4位还是数字
#!/usr/bin/env bash
read num
echo $num | awk -F'-' '{print $1}' |grep '[0-9][0-9][0-9]' >/dev/null
field_1="$?"
echo $num | awk -F'-' '{print $2}' |grep '[0-9][0-9][0-9][0-9]' >/dev/null
field_2="$?"
if [ X"${field_1}" == X"0" -a X"${field_2}" == X"0" ]
then
echo right
else
echo wrong
fi
3.如何判断输入只包含空格或者字母
4.如何使当输出写入文件成功后显示"输入成功",而写入不成功时不显示"输入成功"
判断exit status($?变量),然后做一个if语句就行了。参考1,2. 在试验. 先谢过 :P:P
页:
[1]