windows 批处理后台运行

在你批处理的相同目录下新建一个记事本,里面输入:
set ws=wscript.createobject("wscript.shell")
ws.run "win.bat /start",0
(其中win.bat为你自己的批处理名字,自己改)

然后把这个记事本保存为后缀名为.vbs的文件,到时候你只要运行这个vbs文件就达到目的了!


or


dim objShell
set objShell=wscript.createObject("WScript.Shell")
iReturnCode=objShell.Run("ssh.bat",0,TRUE)



vbs命令行参数:

Set oArgs = WScript.Arguments
     For Each s In oArgs
         MsgBox(s)
     Next
Set oArgs = Nothing


Dim szBuf, i
i = 0
For Each Arg In WScript.Arguments
          i = i + 1
        szBuf = szBuf & "参数" & i & vbTab & Arg & vbCrLf
Next
MsgBox szBuf, vbInformation, WScript.Arguments.Count


远程启动emacs:

dim objShell
set objShell=wscript.createObject("WScript.Shell")
iReturnCode=objShell.Run("plink -ssh -2 -X -pw gxp gxp@192.168.0.84 emacsclient -c",0,TRUE)



### 批处理脚本实现程序后台运行的方法 在 Windows 环境下,可以通过批处理脚本配合 VBScript 来实现 Python 或其他程序的后台运行功能。以下是具体方法及其原理: #### 1. 使用 `mshta` 和 VBScript 合并到批处理文件中 这种方法利用了 `mshta` 的特性来调用 VBScript 并隐藏窗口[^3]。 ```batch @echo off if "%1"=="show" goto begin start mshta vbscript:createobject("wscript.shell").run("%~f0 show",0)(window.close)&&exit :begin cd /d %~dp0 python your_script.py pause ``` 上述代码实现了以下逻辑: - 如果传入参数为 `"show"`,则跳转至标签 `:begin` 开始执行主要命令。 - 利用 `mshta` 调用 VBScript 创建一个新的进程,并传递参数 `"show"` 给当前批处理文件本身。 - 主体部分切换目录 (`cd`) 至脚本所在路径,并启动指定的 Python 文件。 此方法可以有效隐藏 CMD 命令行界面,使程序在后台运行。 --- #### 2. 结合 VBS 脚本来完全隐藏窗口 另一种更灵活的方式是编写独立的 `.vbs` 文件用于隐藏窗口[^4]。 ##### 步骤一:创建一个名为 `RunHidden.vbs` 的文件 内容如下: ```vbscript Set WshShell = CreateObject("WScript.Shell") WshShell.Run chr(34) & "your_batch_file.bat" & Chr(34), 0 Set WshShell = Nothing ``` 该脚本的作用是以最小化模式运行目标批处理文件,其中第二个参数 `0` 表示不显示任何窗口。 ##### 步骤二:修改批处理文件 将实际的任务写入批处理文件 `your_batch_file.bat` 中,例如: ```batch @echo off cd /d %~dp0 python your_script.py pause ``` 最后只需双击 `RunHidden.vbs` 即可让 Python 脚本静默运行后台。 --- #### 3. 配置自动重启机制(扩展) 为了进一步增强稳定性,在批处理中加入循环检测和重新启动的功能是一个不错的选择[^1]。 ```batch @echo off :start tasklist | find /i "python.exe">nul || ( cd /d %~dp0 python your_script.py ) timeout /t 5 > nul goto start ``` 这段代码会持续检查是否有名称为 `python.exe` 的进程存在;如果没有,则尝试再次启动指定的 Python 脚本。 --- ### 总结 以上三种方式分别适用于不同场景需求: - **第一种**适合简单快速部署; - **第二种**更适合需要彻底隐藏控制台的应用场合; - **第三种**则是针对长期运行的服务型应用设计的一种健壮解决方案。 无论采用哪种技术路线,请务必测试其兼容性和可靠性后再投入生产环境中使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值