如何在Windows上的后台运行命令?

在linux中,你可以使用命令 在后台运行命令,在shell离线后,这个命令也会继续。 我想知道有没有像Windows那样的东西?

我假设你想要做的是运行一个没有接口的命令(可能会自动?)。 在Windows上,有许多选项可供您查找:

  • 最好:把你的程序写成一个windows服务。 这些将在没有人登录到服务器时开始。 他们让你选择用户帐户(可以不同于你自己的),他们将重新启动,如果他们失败。 这些程序一直在运行,所以你可以在特定的时间自动执行任务,或者按照定期的时间进行自动化。 有关如何编写Windows服务的更多信息,可以在线阅读教程,例如( http://msdn.microsoft.com/en-us/library/zt39148a(v=vs.110).aspx )。

  • 更好:启动命令并隐藏窗口。 假设这个命令是一个DOS命令,你可以使用VB或者C#脚本。 在这里看到更多的信息。 一个例子是:

     Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run("C:\yourbatch.bat"), 0, True 

    您仍然需要手动启动命令或编写任务来启动命令。 这是这个战略最大的落后之一。

  • 最差:使用启动文件夹启动命令。 这在用户登录到计算机时运行

希望有助于一些!

我相信你正在寻找的命令是start /b *command*

对于unix, nohup表示“不挂断”,这与后台作业(这将是*command* & )略有不同。我相信上面的命令应该类似于windows的后台作业。

你也应该看看Windows中的at命令。 它会在后台启动一个程序,在这种情况下工作。

另一种选择是使用nssm服务管理器软件。 这将包装你作为一个Windows服务运行的任何命令。