linux shell脚本通讯录
时间: 2023-10-13 21:28:55 浏览: 201
可以用一个文本文件来存储通讯录信息,然后使用Shell脚本来读取和操作这个文件。
以下是一个简单的通讯录Shell脚本的示例:
```bash
#!/bin/bash
# 定义通讯录文件路径
address_book="address_book.txt"
# 添加联系人
add_contact() {
echo "请输入联系人姓名:"
read name
echo "请输入联系人电话号码:"
read phone
echo "$name:$phone" >> $address_book
echo "联系人添加成功!"
}
# 删除联系人
delete_contact() {
echo "请输入要删除的联系人姓名:"
read name
sed -i "/^$name:/d" $address_book
echo "联系人删除成功!"
}
# 查找联系人
search_contact() {
echo "请输入要查找的联系人姓名:"
read name
phone=$(grep "^$name:" $address_book | cut -d: -f2)
if [ -z "$phone" ]; then
echo "没有找到该联系人!"
else
echo "该联系人的电话号码是:$phone"
fi
}
# 列出所有联系人
list_contacts() {
echo "所有联系人如下:"
cat $address_book
}
# 显示菜单
show_menu() {
echo "请选择操作:"
echo "1. 添加联系人"
echo "2. 删除联系人"
echo "3. 查找联系人"
echo "4. 列出所有联系人"
echo "5. 退出"
}
# 主程序
while true; do
show_menu
read choice
case $choice in
1) add_contact;;
2) delete_contact;;
3) search_contact;;
4) list_contacts;;
5) break;;
*) echo "无效的选择!";;
esac
done
echo "再见!"
```
这个脚本使用一个文本文件来保存通讯录信息,每行一个联系人,格式为`姓名:电话号码`。在脚本中定义了一些函数来实现不同的操作,比如添加联系人、删除联系人、查找联系人和列出所有联系人。通过一个循环来显示菜单和读取用户的选择,然后调用相应的函数来执行操作。
阅读全文