在批处理中自动按Enter键

时间:2017-01-12 13:27:19

标签: mysql batch-file

如何在批处理文件中自动按Enter键? (背景:我想通过批处理创建和执行mysql-dump(基本上有效)。在创建转储文件之前,系统要求我输出密码。因为我没有,所以我只需按进入开始进程)我想通过任务调度程序完全自动化进程和时间)这就是我到目前为止所拥有的:

@echo off
cd C:\Program Files\MySQL\MySQL Workbench 6.3 CE
mysqldump -h 168.192.100.1 -P 3306 -u user -p DB1 > C:\SQLDump\Db1_dump.sql
WScript.Sleep 2000
mysql -h 168.192.100.1 -P 3306 -u user -p DB1_Copy < C:\SQLDump\Db1_dump.sql
pause

我在网上找到的另一种可能性是用2个文件解决它(1个蝙蝠和1个.vbs:

我根据自己的需要调整了示例,但它不起作用;

(名为UpdateSQLDump.bat的Bat.file)

@echo off
cd C:\Program Files\MySQL\MySQL Workbench 6.3 CE
mysqldump -h 168.192.100.1 -P 3306 -u user -p DB1 > C:\SQLDump\Db1_dump.sql
start UpdateSQLDumpEnter.vbs
mysql -h 168.192.100.1 -P 3306 -u user -p DB1_Copy < C:\SQLDump\Db1_dump.sql
pause

(vbs.file名为UpdateSQLDumpEnter.vbs)

dim WshShell
set WshShell = WScript.CreateObject("WScript.Shell")
WScript.Sleep 100
WshShell.AppActivate "UpdateSQLDump.bat"
WScript.Sleep 100
for j = 0 to 2
WshShell.SendKeys "ENTER"
WScript.Sleep 400
next

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

不完全是你要求的,但是: 如果您的用户没有密码,您可以省略-p,在这种情况下,MySQL根本不会提示您输入密码。