新手入门宝宝,想要一个类似的码源学习一下,求求一个码源,拜托了🙏
可以参考以下的 shell 脚本代码实现旅行社管理信息系统中的导游管理模块:
#!/bin/bash
# 定义文件路径和字段分隔符
FILE_PATH="./guides.txt"
DELIMITER="|"
# 检查文件是否存在,不存在则创建并添加表头
if [ ! -f "$FILE_PATH" ]; then
touch "$FILE_PATH"
echo "name${DELIMITER}gender${DELIMITER}age${DELIMITER}phone${DELIMITER}email${DELIMITER}address${DELIMITER}description" >> "$FILE_PATH"
fi
# 添加导游信息函数
add_guide() {
# 读取导游信息
echo "请输入导游信息:"
read -p "姓名: " name
read -p "性别: " gender
read -p "年龄: " age
read -p "电话: " phone
read -p "邮箱: " email
read -p "住址: " address
read -p "介绍: " description
# 将信息保存到文件中
echo "${name}${DELIMITER}${gender}${DELIMITER}${age}${DELIMITER}${phone}${DELIMITER}${email}${DELIMITER}${address}${DELIMITER}${description}" >> "$FILE_PATH"
echo "导游信息添加成功!"
}
# 修改导游信息函数
update_guide() {
echo "请输入需要修改的导游姓名:"
read name
# 查找匹配的导游信息
match=$(grep "^${name}${DELIMITER}" "$FILE_PATH")
if [ -n "$match" ]; then
# 找到匹配的导游信息,读取新的导游信息并替换旧信息
echo "请输入新的导游信息:"
read -p "姓名: " new_name
read -p "性别: " new_gender
read -p "年龄: " new_age
read -p "电话: " new_phone
read -p "邮箱: " new_email
read -p "住址: " new_address
read -p "介绍: " new_description
sed -i "s|^${name}${DELIMITER}.*|${new_name}${DELIMITER}${new_gender}${DELIMITER}${new_age}${DELIMITER}${new_phone}${DELIMITER}${new_email}${DELIMITER}${new_address}${DELIMITER}${new_description}|g" "$FILE_PATH"
echo "导游信息修改成功!"
else
echo "未找到匹配的导游信息。"
fi
}
# 删除导游信息函数
delete_guide() {
echo "请输入需要删除的导游姓名:"
read name
# 查找匹配的导游信息并删除
sed -i "/^${name}${DELIMITER}/d" "$FILE_PATH"
echo "导游信息删除成功!"
}
# 搜索导游信息函数
search_guide() {
echo "请输入导游姓名或关键字:"
read keyword
# 查找匹配的导游信息并打印
grep -i "${keyword}" "$FILE_PATH" | more
}
# 定义菜单选项
PS3="请选择操作:"
options=("添加导游" "修改导游信息" "删除导游信息" "搜索导游信息" "退出")
select opt in "${options[@]}"
do
case $opt in
"添加导游")
add_guide
;;
"修改导游信息")
update_guide
;;
"删除导游信息")
delete_guide
;;
"搜索导游信息")
search_guide
;;
"退出")
break
;;
*) echo "无效选项,请重新选择。" ;;
esac
done
该脚本实现了以下功能: