【发布时间】:2011-04-23 11:08:57
【问题描述】:
我一直在尝试获取一个 shell(bash) 脚本来将一行插入到远程数据库中,但是我遇到了一些麻烦:(
该脚本旨在将文件上传到服务器,获取 URL、HASH 和文件大小,连接到远程 mysql 数据库,并将数据插入现有表中。在远程 MYSQL 数据库位之前,我已经让它工作了。
看起来像这样:
#!/bin/bash
zxw=randomtext
description=randomtext2
for file in "$@"
do
echo -n *****
ident= *****
data= ****
size=` ****
hash=`****
mysql --host=randomhost --user=randomuser --password=randompass randomdb
insert into table (field1,field2,field3) values('http://www.example.com/$hash','$file','$size');
echo "done"
done
我在编程方面完全是个菜鸟,所以是的:P
无论如何,当我遇到错误时,我添加了 \ 来转义括号。就像现在一样,脚本可以正常工作,直到连接到 mysql 数据库。它只是连接到mysql数据库并且不执行插入命令(我什至不知道插入命令是否可以在bash中工作)。
PS:我已经从命令行一个一个地尝试了两个mysql命令,它们都工作了,虽然我定义了哈希/文件/大小并且没有转义“”。
不管怎样,你们怎么看?我想要做的甚至可能吗?如果有怎么办?
任何帮助将不胜感激:)
【问题讨论】:
标签: mysql bash scripting shell