【发布时间】:2017-05-27 15:14:02
【问题描述】:
如何在批处理文件中自动按 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 个 bat 和 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
(名为 UpdateSQLDumpEnter.vbs 的 vbs.file)
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
我该如何解决这个问题?
【问题讨论】:
-
检查this - 你应该使用
~或{ENTER}而不是ENTER
标签: mysql batch-file