微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Bash脚本在MySQL中插入值

我想创建一个连接到我的MySQL服务器的bash脚本,并从txt文件中插入一些valuse.
我写下来了:

#!/bin/bash
echo "INSERT INTO test (IP,MAC,SERVER) VALUES ('cat test.txt');" | MysqL -uroot -ptest test;

但我收到以下错误

ERROR 1136 (21S01) at line 1: Column count doesn’t match value count
at row 1

我想错误是在我的txt文件中,但我尝试了很多变化,仍然没有成功的希望.

我的txt文件如下所示:

10.16.54.29 00:f8:e5:33:22:3f marSara

解决方法:

试试这个:

#!/bin/bash
inputfile="test.txt"
cat $inputfile | while read ip mac server; do
    echo "INSERT INTO test (IP,MAC,SERVER) VALUES ('$ip', '$mac', '$server');"
done | MysqL -uroot -ptest test;

这样你流式读取文件以及MySQL命令执行.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐