1.如果判断文件是否运行?
可以用如下方法判断
tasklist|findstr winlogon.exe
if errorlevel 0 (如果winlogon.exe运行了,在此继续处理)
if not errorlevel 0 (如果没运行,在此继续处理)
2.判断是否被访问?
可以用ren变通实现,原理是如果文件被访问,一般会被占用,则不能对文件重新命名。(注意:记事本等程序打开文本文件后,不会占用文件,仅仅是将文件独到自身缓冲区,然后释放文件,不再访问,等你保存是再回写,不能用此方法检测)
ren notepad.exe tmptt.exe
if errorlevel 0 ( ren tmptt.exe notepad.exe; notepad.exe文件未被占用后续处理)
if not errorlevel 0 ( 文件被占用后续处理)
3.判断文件是否是可执行?
dos里面判断只能简单的通过文件后缀名判断,不能更进一步分析正确性。
一般可执行后缀为.exe .bat .reg .com .scr等等
范例:下面语句(在bat中测试)判断当前目录下是否存在.exe为后缀的文件
for /f %%j in ('dir /b') do ( if "%%~xj"==".exe“ echo 找到一个exe文件+后续处理 )
还有疑问可追问