标题: [其他] [已解决]批处理能不能检测是否有文件夹打开?谢谢 [打印本页]
作者: yyz219 时间: 2022-1-21 16:59 标题: [已解决]批处理能不能检测是否有文件夹打开?谢谢
本帖最后由 yyz219 于 2022-1-22 11:13 编辑
- 解决了:
-
- ::【大概需要3、4秒】
- @echo off
- powershell -c "(New-Object -ComObject 'Shell.Application').Windows() | foreach{ $_.LocationURL }">123.txt
- ::【检测 “关键字”:file】
- findstr ""file"" "123.txt" >nul 2>&1
-
- if errorlevel 1 goto :C %【无就跳到 :C】%
- if errorlevel 0 goto :D %【有就跳到 :D】%
- :C
- del 123.txt
- echo 无
- pause >nul
- exit
- :D
- del 123.txt
- echo 有
- pause >nul
- exit
复制代码
作者: 窄口牛 时间: 2022-1-21 19:32
cmdow /t
Handle Lev Pid -Window status- Image Caption
0x1902B4 1 2656 Res Act Ena Vis Unknown 管理员: C:\Windows\System32\cmd.exe -
0x190286 1 4704 Min Ina Ena Vis Unknown 小工具
0x0F012C 1 1836 Min Ina Ena Vis Unknown 批处理能不能检测是否有文件夹打开?谢谢
0x0D01E4 1 4704 Min Ina Ena Vis Unknown SOFT (D
第三方可以的
作者: yyz219 时间: 2022-1-21 19:35
回复 2# 窄口牛
我看不明白,惭愧
作者: aloha20200628 时间: 2022-1-21 19:42
@echo off
set "dirF="
set/p dirF="指定一个目录或其关键字:"
if not defined dirF exit/b
set "dirF=%dirF:"=%"
set "dirFopen="
for /f "delims=" %%v in ('tasklist.exe /v /fo list /fi "imagename eq explorer.exe" ^| find /i "%dirF%" ') do set dirFopen=%%v
if defined dirFopen echo,与【%dirF%】有关的目录《%dirFopen:~10%》已被资源管理器打开
pause & exit/b
作者: yyz219 时间: 2022-1-21 19:50
回复 4# aloha20200628
不行啊:
指定一个目录或其关键字:D:\桌面\Desktop\123
请按任意键继续. . .
作者: aloha20200628 时间: 2022-1-21 21:42
tasklist似乎只记住当前最活跃的文件夹(或仅打开一个文件夹),那些虽被资源管理器打开但不活跃的文件夹都被忘记了...
作者: went 时间: 2022-1-21 21:58
cmd执行- powershell -c "(New-Object -ComObject 'Shell.Application').Windows() | foreach{ $_.LocationURL }"
复制代码
作者: yyz219 时间: 2022-1-21 22:02
回复 7# went
成功,就是有一点慢
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |