php 监听cli模式脚本

2020-10-14

windows:

<?php
//设置cmd窗口标题
cli_set_process_title("NewProcess");
?>

cmd:
//查看cmd窗口标题为NewProcess的进程
tasklist /FI "WINDOWTITLE eq NewProcess"

//设置窗口标题
title 窗口标题

//新窗口打开cmd
方式1:执行完毕后不会关闭窗口
start cmd /k echo Hello, World!
方式1:执行完毕后会关闭窗口
start cmd /C echo Hello,World! pause

//bat脚本执行后不会关闭
@echo on
echo Hello,World!
pause

//bat脚本执行后不会关闭,可以接着输入命令
@echo on
echo Hello,World!
@cmd /k

//获取指定进程的数量(示例:WINWORD.EXE)
set num=0;
for /F "tokens=1*" %%a in ('tasklist /nh /FI "IMAGENAME eq WINWORD.EXE"') do (if %%a = WINWORD.EXE set /a num+=1)

脚本判断进程是否存在,不存在则重新启动脚本

@echo off
set hasit=no
for /F "tokens=1*" %%a in ('tasklist /nh /FI "WINDOWTITLE eq NewProcess"') do if %%a == cmd.exe set hasit=yes
if %hasit% == yes goto end
start cmd /k H:\c.bat

循环执行判断脚本,每隔5秒执行一次

@echo on
:abc

timeout /t 5
set hasit=no
for /F "tokens=1*" %%a in ('tasklist /nh /FI "WINDOWTITLE eq NewProcess"') do if %%a == cmd.exe set hasit=yes
if %hasit% == no start cmd /C H:\c.bat pause

goto abc

循环执行判断脚本,每隔5秒执行一次,只显示等待秒数,不显示其他代码内容

@echo off
title listen

goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit

:begin

timeout /t 5
set hasit=no
for /F "tokens=1*" %%a in ('tasklist /nh /FI "WINDOWTITLE eq NewProcess"') do if %%a == cmd.exe set hasit=yes

if %hasit% == no start cmd /C H:\c.bat pause

goto begin

bat命令小结:https://blog.csdn.net/wang15061955806/article/details/52565615

{/if}