我在服务器上运行一个.bat脚本,它只是简单地检查服务是否正在运行,类似于:
nssm.exe start MyService
for /F "tokens=3 delims=: " %%H in ('sc query "MyService" ^| findstr "STATE"') do (
if /I "%%H" NEQ "RUNNING" (
exit /b 1
) else (
exit /b 0
)
)此.bat文件由此ansible调用:
- name: Start service
win_command: StartService.bat
args:
chdir: "C:\temp"
register: result
failed_when: result.rc != 0但无论是失败还是成功,我总是得到一个0错误代码。如果我手动运行脚本,并检查%errorlevel%,它总是显示正确的脚本。
发布于 2019-10-09 16:04:32
我尝试过这个版本:
nssm.exe start MyService
sc query "MyService" | findstr /I "RUNNING"
exit /b %errorlevel%https://stackoverflow.com/questions/58295472
复制相似问题