电脑爱好者论坛's Archiver

我很受伤 发表于 2008-6-13 13:56

linux shel 脚本编程的学习笔记之学习编写简单的通讯录

学习编写简单的通讯录  

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

不错,学习了

cdef865 发表于 2008-7-3 19:11

确实是有抱负的小伙子

**** 作者被禁止或删除 内容自动屏蔽 ****

dog6put 发表于 2008-7-12 19:00

互联网

随着互联网的迅速普及,电子商务方兴未艾,许多年轻创业者选择了电子商务,特别是[url=http://www.diywebdesign.hk/][size=2]网站建设[/size][/url],经销电子产品、网络设备、家用电器以至办公用品、日用日、妇婴用品等等。与这些铺天盖地的B2C模式的电子商务相比,B2B模式的电子商务虽然未占主导地位,但也取得了长足的发展。许多电子商务的经营者已经初尝了互联网发展的甜头,阿里巴巴、易趣等网站则声名鹊起,取得了骄人的成绩,这又进一步刺激了其他创业者将目光投向电子商务的[url=http://www.diywebdesign.hk/][size=2]网站建设[/size][/url]。

电子商务的载体是电子商务[url=http://www.diywebdesign.hk/][size=2]网站建设[/size][/url],通过电子商务网站以及一些辅助手段,电子商务经营者完成了交易,取得了收益。因此,电子商务[url=http://www.diywebdesign.hk/][size=2]网站建设[/size][/url]就显得极其重要,而在网站建设伊始以及建设过程中,相关法律问题不能不引起创业者的重视。电子商务所涉法律问题众多,囿于篇幅,本文仅就其中几个相对重要问题,提点参考性建议。

值得大家去思考

bcde046 发表于 2008-7-17 09:21

绝对支持你

[size=2]说得好,完全支持你。送上美女一个[/size]
[size=2][/size]
[img]http://www.tucool.net/UpLoads/200708/262321425.jpg[/img]

我的个性签名:
---------------------------------------------------------------------------------------------------------------------------------
[url=http://www.yoyo-power-leveling.com/power_leveling.php]wow power leveling[/url],[url=http://www.yoyo-power-leveling.com/power_leveling.php]wow powerleveling[/url],[url=http://www.yoyo-power-leveling.com/part_time_power_leveling.php]wow power leveling[/url],[url=http://www.yoyo-power-leveling.com/pvp_power_leveling.php]pvp power leveling[/url],[url=http://www.yoyo-power-leveling.com/power_leveling.php]world of warcraft power leveling[/url],

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2007 Comsenz Inc.