笔者曾经为银行后台写过一个司法查询脚本,但不便于分享。今天我借助前些天比较火的电视剧《三生三世十里桃花》,来翻版一个一揽芳华查询系统, 本节课我们会学到shell中的函数复用,交互式菜单制作,时间计算等。不说了,先上图。
需求:根据Role_ID批量导出人物信息。结果如下:
==交互式菜单==
A=`tput blink`
B=`tput sgr0`
week_num=`date +%w`
week_array=(日 一 二 三 四 五 六)
WEEK=${week_array[$week_num]}
DATE=`date +%F`
menu(){
clear
cat <<-EOF
*************************************************************************
* *
* $A 【 一 揽 芳 华 查 询 系 统 】 $B*
* *
* 1.根据Role_ID查询人物 *
* 2.根据Role_ID查询法器 *
* 3.根据Role_ID查询坐骑 *
* 4.根据Role_ID查询居所 *
* 5.清空查询列表 *
* 6.重置文件编号 *
* q.给朕退下 *
* h.获得上仙的帮助 *
* *
* *
* *
* 今天是$DATE 周$WEEK *
* *
* *
*************************************************************************
EOF
}
==时间计算==
begin=$(date +%s)
end=$(date +%s)
spend=$( expr $end - $begin )
HS=$(printf "%.2f" `echo "scale=2;$spend/60"|bc`)
echo "此次查询耗时: $HS 分"
==查询函数==
chaxun1(){
mysql -N -uroot -p1234 <<-EOF
select concat(role_id,"|+|",role_name,"|+|",role_backgroud,'|-|')
from sanshengsanshi.role_info
where role_id='$1';
quit
EOF
}
表结构如下:
MariaDB [sanshengsanshi]> desc role_info;
+----------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+----------------+
| role_id | int(11) | NO | PRI | NULL | auto_increment |
| role_name | varchar(20) | NO | | NULL | |
| role_backgroud | text | NO | | NULL | |
+----------------+-------------+------+-----+---------+----------------+
灌数据
create database sanshengsanshi default character set utf8 collate utf8_general_ci;
create table role_info_2( role_id int not null auto_increment, role_name varchar(20) not null , role_backgroud text not
null, primary key(role_id) ) engine=INNODB auto_increment=1000000 default charset=utf8;
insert into role_info_3 value('','白浅','九尾白狐青丘帝姬,战神墨渊之徒,位居上神却洒脱逗趣,身为上神俊俏美丽,嗜喝酒常迷
路,不善送礼,历情劫
为凡人,遇此生挚爱,经三生爱恨别离');
更多正在努力构思中 。。。