在后台运行bat文件

时间:2017-09-30 09:06:01

标签: windows perl batch-file cmd staf

我有这个.bat文件,我想在后台运行。该文件基本上启动进程。 .bat文件的输出为:

X:\bin>start_STAF.bat
start_STAF.bat

X:\bin>X:\ActiveState\Perl\perl-5.14.0\bin\perl.exe x:\bin\start_STAF.pl

The operation completed successfully.
The operation completed successfully.
The operation completed successfully.
*
STAFProc is now Started.  Leave this window up.
*

几分钟后按Enter键将控件返回到提示符。我不喜欢这个,因为这个过程需要通过Perl脚本启动,我不知道如何通过Perl自动按Enter键。

我尝试了一些事情,但没有成功。

我尝试使用START /B start_STAF.bat,但这样做的是它返回到提示符而不启动.bat文件。但是,下次执行tasklist时,.bat文件将在stdout上启动。这让我回到原点。

我尝试将stdout / stderr重定向为start_STAF.bat >nul 2>&1,但这也不会启动.bat文件。

还有什么我可以做的吗?谢谢!

2 个答案:

答案 0 :(得分:1)

只需运行命令name: 'test shop', email: 'email@shop', products: [], news: [ { name: 'test news', content: 'lorum ipsum....', summary: 'lorum', images: [ { src: 'news/image_1.jpg', } ] } ]

答案 1 :(得分:0)

对于Windows 10

  1. 写入.bat文件(syncfiles.bat)
"C:\Program Files\Oracle\VirtualBox\VBoxHeadless.exe" --comment "linux_mint" --startvm "14f426cc-845d-46cb-9f6e-4dbb31a3769a"
  1. 写入.vbs文件(start.vbs):
Set WshShell = CreateObject("WScript.Shell") 
WshShell.Run chr(34) & "syncfiles.bat" & Chr(34), 0
Set WshShell = Nothing
  1. 运行vbs文件,双击start.vbs