前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >shell作业项目留存代码

shell作业项目留存代码

作者头像
红目香薰
发布2023-10-11 10:22:40
1640
发布2023-10-11 10:22:40
举报
文章被收录于专栏:CSDNToQQCode

完整代码 

初始化函数【init.sh】

代码语言:javascript
复制
function initHotel(){
	# 判断文件夹是否存在
	file=hotel
	if [ ! -d "$file" ]
	then
		mkdir hotel
		echo "初始化文件夹成功"
	fi
	file_f="hotel/f1n1.txt"
	# 清空变量
	unset isf
	if [ -f "$file_f" ]
	then
		read -p "是否覆盖初始化?(yes/no)" isf
		if [ $isf = "no" ]
		then
			echo "取消初始化,保留原数据."
			sleep 1
			# 取消初始化
			return 0
		else
			# 清空文件夹
			rm -rf hotel/
			# 重新创建文件夹以及对应房间
			mkdir hotel
			# 创建房间
			createFile
		fi
	else
		# 创建房间
		createFile
	fi
	# 返回1代表完成
	return 1
}
function createFile(){
	for((i=1;i<=5;i++))
	do
		for((j=1;j<10;j++))
		do
			touch "hotel/f"$i"n"$j".txt"
		done
	done
}
initHotel

查询房间【finds.sh】

代码语言:javascript
复制
function finds(){
	# 累积是否换行次数
	count=0
	for((i=1;i<=5;i++))
	do
		for((j=1;j<10;j++))
		do
			((count++))
			file="f"$i"n"$j".txt"
			# 空
			if [ ! -s "hotel/$file" ] && [ $1 == 0 ]
			then
				echo -n -e $file"\t"
				if ((count%5==0))
				then
					echo
				fi
				continue
			fi
			# 非空
			if [ -s "hotel/$file" ] && [ $1 == 1 ]
			then
				echo -n -e $file"\t"
				if ((count%5==0))
				then 
					echo
				fi
			fi
		done
	done
	echo
}
finds $1

入住房间【inInfo.sh】

代码语言:javascript
复制
read -p "请输入入住房号(例:f1n1):" fno
read -p "请输入入住人姓名:" name
read -p "请输入入住人手机号:" phone
read -p "请输入入住人身份证号码:" idcard
echo "$name - $phone -$idcard">"hotel/$fno".txt
echo "$name 入住完毕 入住房间$fno"
echo "$name - $phone -$idcard 入住 $fno">>hotel.log
taike@taikeEDU:~/桌面/fun$ vi admin.sh

退出房间【outInfo.sh】

代码语言:javascript
复制
read -p "请输入退房房号(例:f2n7):" nums
info=$(cat hotel/$nums.txt)
echo "$info 退房 $nums">>hotel.log
echo "正在检查房间..."
sleep 1
echo "退房完毕。"
>"hotel/$nums".txt

运行主程序【main.sh】

代码语言:javascript
复制
clear
echo "--------------------------"
echo "-----欢迎来到豪华酒店-----"
echo "--------------------------"
# 初始化房间
source init.sh
while :
do
	echo "-----1、查看未住房间------"
	echo "-----2、查看入住房间------"
	echo "-----3、房间入住操作------"
	echo "-----4、房间退房操作------"
	echo "-----5、退出操作系统------"
	echo "--------------------------"
	read -p "请输入操作选项:" nums
	case $nums in
		1)
			source finds.sh 0
			;;
		2)
			source finds.sh 1
			;;
		3)	
			source inInfo.sh
			;;
		4)	
			source outInfo.sh
			;;
		5)echo "欢迎下次继续使用!"
			exit 
			;;
	esac
done

留存日志【log.log】

功能演示

功能1

功能3房间入住操作

功能4房间退房操作

功能2查看入住房间

功能5退出操作系统

日志查看【hotel.log】

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 完整代码 
  • 功能演示
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档