我正在尝试从bash脚本运行查询:
#!/bin/bash
query="\"show databases\""
command="mysql --defaults-file=/user/.my.cnf -e "
outputfile=" > query_result.txt"
command=$command$query$outputfile
$($command)
结果是这样的:
# ./query_test
mysql: unknown option '--print-defaults'
我做错了什么?
命令:
mysql --defaults-file=/user/.my.cnf -e "show databases"
工作正常,没有任何问题
答案 0 :(得分:1)
感谢@ benjamin-w的评论,我为此解决了:
#!/bin/bash
args=(--defaults-file=/users/.my.cnf)
args+=(-e "show databases")
outputfile="query_result.txt"
mysql "${args[@]}" > "$outputfile"
此链接中的其他示例: https://mywiki.wooledge.org/BashFAQ/050