Sequel无法使用ARGV通过.cmd提供的登录参数连接到MySQL,但可以在命令行中正常工作

Sequel无法使用ARGV通过.cmd提供的登录参数连接到MySQL,但可以在命令行中正常工作,mysql,ruby,cmd,argv,sequel,Mysql,Ruby,Cmd,Argv,Sequel,init.rb: A.cmd: 当我双击A.cmd时,它会打开并崩溃,抛出以下错误: Mysql::错误:拒绝使用密码对用户“root”@“localhost”进行访问:是 但是当我打开命令提示符,键入a.cmd并运行它时,脚本工作正常 为什么?我唯一能想到的就是可能的管理权。右键单击A.cmd并选择以管理员身份运行,然后查看是否有任何不同。@Micah没有,没有更改。但我的密码中确实有一个&似乎与脚本无关。当我删除它时,.cmd运行得很好,但是为什么&会把一切都搞糟呢?很可能是因为&是wind

init.rb:

A.cmd:

当我双击A.cmd时,它会打开并崩溃,抛出以下错误:

Mysql::错误:拒绝使用密码对用户“root”@“localhost”进行访问:是

但是当我打开命令提示符,键入a.cmd并运行它时,脚本工作正常


为什么?

我唯一能想到的就是可能的管理权。右键单击A.cmd并选择以管理员身份运行,然后查看是否有任何不同。@Micah没有,没有更改。但我的密码中确实有一个&似乎与脚本无关。当我删除它时,.cmd运行得很好,但是为什么&会把一切都搞糟呢?很可能是因为&是windows命令提示中用于分隔命令的特殊字符。不确定手动输入时为什么&起作用,除非您使用了不同的引号或其他触发器通知控制台忽略它。@Micah我没有使用任何特殊字符。我键入它的方式与.cmd文件中写入的方式相同。
## LOCAL DB
DB = Sequel.connect(
    :adapter => 'mysql',
    :user => ARGV[1],
    :password => ARGV[2],
    :host => '127.0.0.1',
    :database => ARGV[3]
)
ruby init.rb A 'root' 'MY_PASSWORD' 'DATABASE_NAME'