作用:可以在写监控脚本时,将结果值保存到mysql数据库

使用方法:sh 脚本  库名称.表名称 字段=值 字段=值 字段=值

1、脚本

[root@localhost tmp]# cat writ_mysql.sh
#!/bin/bash
#判断传入的参数
if [ $# -eq 0 ]
then
echo sh $0 table_name name=张三 xb=女
else
#输入的参数转换函数 例子: name=张三 xb=1 转换成 name,xb '张三','1'
convfield(){
#数组索引
j=1
#获取输入的参数,排除第一个参数
for i in "${@:2}"
do
#获取name名称
name[$j]=$(echo $i|awk -F = '{print $1}')
#获取name的值
value[$j]=\'$(echo $i|awk -F = '{print $2}')\'
#查看字段名称和值
#echo ${name[$j]}=${value[$j]}
#索引加1
j=$((j+1))
done
#拼接成sql的name和value
new_name=$(echo ${name[@]}|sed 's/ /,/g')
new_value=$(echo ${value[@]}|sed 's/ /,/g') echo "$1($new_name) values($new_value)"
} jdbcinfo(){
user=root
pass='password'
ip=192.168.1.1
port=3306
}
#将所有参数传递给转换函数,进行转换
convfield $@
jdbcinfo #将值插入指定表字段
mysql -u$user -h$ip -P $port -p$pass -e \
"insert into $1($new_name) values($new_value)" #查询对应表数据
mysql -u$user -h$ip -P $port -p$pass -e \
"select * from $1"
fi

2、执行

[root@localhost tmp]# sh writ_mysql.sh nginx_info.test name=周末
nginx_info.test(name) values('周末')
+----+--------+---------------------+--------+
| id | name | date | bz |
+----+--------+---------------------+--------+
| 1 | zhangs | 2022-07-11 15:15:51 | 测试 | | 13 | 周末 | NULL | NULL |
+----+--------+---------------------+--------+

最新文章

  1. js生成一个不重复的ID的函数的进化之路
  2. JavaEE Spring
  3. c语言数据结构之 堆排序
  4. Atitit。木马病毒原理机密与概论以及防御
  5. JS时间自动更新
  6. 第一个jsp代码实现简单计算器
  7. 在express站点中使用ejs模板引擎
  8. objectARX获取当前图层所有文字样式
  9. USB 描述符
  10. Hibernate 使用说明
  11. 为啥都不用Qt Quick Controls 2呢
  12. CKEditor + CKFinder 实现编辑上传图片配置 (二)
  13. gulp快速入门&初体验
  14. [C#源代码]使用SCPI指令对指定通信端口(RS232/USB/GPIB/LAN)的仪器编程
  15. 一 : springmvc常用注解
  16. T-SQL 中的CROSS JOIN用法(半翻译)
  17. AngularJS进阶(三十五)浏览器兼容性解决之道
  18. layui选项卡同步问题
  19. Summary: Calculate average where sum exceed double limits
  20. C#8个常用的字符串的操作

热门文章

  1. JavaSE 日期时间类整理
  2. Unity ARCore动态增加识别图
  3. 只要引用这个js就会页面加载完毕自动弹出提示框
  4. echart地图引入路径问题
  5. ROS多机通信
  6. css你所不知道技巧
  7. python菜鸟学习: 14. GUI界面化使用
  8. Python170道面试题
  9. python requests 模拟登录
  10. 在windows上远程linux (待完善)