shell 脚本 很像 win下的bat 然而它确更加强大下面的脚本就 是一种体现
从中学会 对shell 脚本中 过滤 替换 和判断 的 各类技巧
#!/bin/bash
#++++++++++++++++++++++++++++++++
# 修改通讯录的函数
#++++++++++++++++++++++++++++++++
function W ()
{
clear
while :
do
echo "现在进入修改部分"
cat <<EOF
[1] 修改地址
[2] 修改QQ号
[3] 修改电话号码
[4] 退出
EOF
echo -n "选择?:"
read www
case $www in
1)echo -n "输入要修改的用户名:"
read name
fgrep "$name" ~/telp >/dev/null
if [ "$?" = "0" ]
then
echo -n "输入新的地址:"
read bbb
bbb1=`grep "$name" ~/telp | awk '{print $4}'`
more ~/telp|sed '/'$name'/{ s/'$bbb1'/'地址:$bbb'/;q; }' >/tmp/telp
more /tmp/telp > ~/telp
rm -rf /tmp/telp
else
echo "通讯录中没有你要找寻的用户名字"
fi
clear
;;
2)echo -n "输入要修改的用户名:"
read ddd
fgrep "$name" ~/telp >/dev/null
if [ "$?" = "0" ]
then
echo -n "输入新的QQ号:"
read qqq
qqq1=`grep "$name" ~/telp | awk '{print $6}'`
more ~/telp|sed '/'$name'/{ s/'$qqq1'/'QQ号:$qqq'/;q; }' >/tmp/telp
more /tmp/telp > ~/telp
rm -rf /tmp/telp
else
echo "通讯录中没有你要找寻的用户名字"
fi
clear
;;
3)echo -n "输入要修改的用户名:"
read name
fgrep "$name" ~/telp >/dev/null
if [ "$?" = "0" ]
then
echo -n "输入新的电话号码:"
read hhh
hhh1=`grep "$name" ~/telp | awk '{print $5}'`
more ~/telp|sed '/'$name'/{ s/'$hhh1'/'电话:$hhh'/;q; }' >/tmp/telp
more /tmp/telp > ~/telp
rm -rf /tmp/telp
else
echo "通讯录中没有你要找寻的用户名字"
fi
clear
;;
4)
clear
break
;;
*)echo "只能选择[1-4]"
;;
esac
done
}
function 确认()
{
while true
do
echo -n "你是否要继续添加?(Y/N):"
read ANSWER
case $ANSWER in
[Yy]) return 0;;
[Nn]) return 1;;
*) echo "只能输入 Y 或者 N";;
esac
done
}
#+++++++++++++++++++++++
# 主程序开始
#+++++++++++++++++++++++
if [ ! -f ~/telp ]
then
touch ~/telp
fi
if [ ! -w ~/telp ]
then
chmod +w ~/telp
fi
if [ ! -r ~/telp ]
then
chmod +r ~/telp
fi
if [ "$1" != "-q" -o "$1" != "-r" -o "$1" != "-f" ]
then
echo "本程序使用格式 为 :通讯录 [-qr][-f 查询的字符串][-w]"
fi
if [ $# -eq 0 -o $# -gt 2 ]
then
echo "使用说明:通讯录 -q,查询;通讯录 -r,增加:通讯录 -f 查询的字符串.-w 修改"
exit
fi
if [ $1 = -q ]
then
if [ ! -s ~/telp ]
then
echo "通讯录为空 不能查询"
exit
fi
echo -n "请输入要查询的关键字 如:姓名(编号、地址或电话号码):"
read name1
grep $name1 ~/telp
fi
#++++++++++++++++++++++
#添加通讯录的部分
#++++++++++++++++++++++
if [ $1 = -r ]
then
while :
do
if 确认
then
tail -1 ~/telp | awk '{print $2}' > /dev/null 2>&1
a1="$?"
if [ $a1 = 0 ]
then
one=`tail -1 ~/telp | awk '{print $2}'`
ON=`expr $one + 1`
else
ON=1
fi
clear
echo "开始添加"
echo -n "请输入姓名:"
read e
echo -n "请输入地址:"
read f
echo -n "请输入电话号码:"
read g
echo -n "输入QQ 号:"
read QQ
if [[ "$e" = "" || "$f" = "" || "$g" = "" || "$QQ" = "" ]];then
echo "写入失败 因为姓名 地址 电话 和QQ 号 其中有一个为空"
echo "输入不能为空 如果不知道确切的 必须输入(不详)"
echo "如: 输入QQ 号: 不详 "
else
echo "#编号 $ON 姓名:$e 地址:$f 电话:$g QQ号:$QQ">>~/telp
fi
else
break
fi
done
fi
if [ "$1" = "-f" -a "$2" != "" ]
then
if [ ! -s ~/telp ]
then
echo "通讯录为空 不能查询"
exit
fi
grep "$2" ~/telp
exit
fi
#++++++++++++++++++++
# 这里使用了修改的函数
#++++++++++++++++++++
if [ "$1" = "-w" ]
then
W
fi
#+++++++++++++++++++
#显示所有的内容
#++++++++++++++++++
if [ "$1" = "-a" ]
then
more ~/telp
fi
最新回复
www3966 (2008-6-20 10:56:08)
cdef865 (2008-7-03 19:11:39)
水调歌头
Roll forming machine
美国夏令营
dog6put (2008-7-12 19:00:37)
电子商务的载体是电子商务网站建设,通过电子商务网站以及一些辅助手段,电子商务经营者完成了交易,取得了收益。因此,电子商务网站建设就显得极其重要,而在网站建设伊始以及建设过程中,相关法律问题不能不引起创业者的重视。电子商务所涉法律问题众多,囿于篇幅,本文仅就其中几个相对重要问题,提点参考性建议。
值得大家去思考
bcde046 (2008-7-17 09:21:20)
我的个性签名:
---------------------------------------------------------------------------------------------------------------------------------
wow power leveling,wow powerleveling,wow power leveling,pvp power leveling,world of warcraft power leveling,