找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 22725|回复: 8

[文本处理] 批处理如何搜索所有磁盘包含u盘及光盘根目录下的文件夹并返回绝对路径?

[复制链接]
发表于 2021-8-1 15:47:28 | 显示全部楼层 |阅读模式
请教如何搜索所有磁盘包含u盘及光盘根目录下的2个文件夹,并返回绝对路径。不知道我叙述的是否清楚,就是说只搜寻一次分区的根目录下的文件夹,但是要指定2个文件夹的名称,搜到后要返回绝对路径并显示在屏幕上。二级目录可能也存在同名文件夹,但要忽略。高人指点一下,之前试了一下,可以搜到文件名但是只能一个,第二个就退出不继续了。
发表于 2021-8-1 18:01:30 | 显示全部楼层
@echo off
for /f "skip=1" %%i in ('wmic logicaldisk get deviceid') do (
if not "%%i"=="" forfiles /p %%i\ /c "cmd /c if @isdir==FALSE echo @path"
)|findstr /i "111 222"
pause
 楼主| 发表于 2021-8-2 23:28:36 | 显示全部楼层
本帖最后由 xintiandi 于 2021-8-2 23:29 编辑

回复 2# idwma


    我试了,不行,是不是需要wmic服务启用才行哦。
   我在网上找了一段代码可以,但是有时搜索过程有点长,我的电脑有多个硬盘。不知道有没有更高级的,其实我只需要搜寻一级目录,下面的代码要搜寻子目录,我不知道怎么搜目录,只有在需要的目录中分别建了一个空文件来定位。
@echo off
rem 全盘搜索/查找指定名称的文件
title 开始搜索.....
for %%a in (Z Y X W V U T S R Q P O N M L K J I H G F E D C) do (
if exist %%a:\ (
echo;%%a: searching……
pushd %%a:\
for /f "delims=" %%b in ('dir /a-d-h/b/s "imdisk.txt" "isos.txt" 2^>nul') do echo;%%b
popd
)
)
echo;搜索完毕!
pause
发表于 2021-8-4 13:39:58 | 显示全部楼层
回复 3# xintiandi


    里面的dir /s去掉就可以了
发表于 2021-8-4 13:50:17 | 显示全部楼层
回复 3# xintiandi


    去掉/S就好
  /S          显示指定目录和所有子目录中的文件。

    代码:
  1. @echo off
  2. rem 全盘搜索/查找指定名称的文件
  3. title 开始搜索.....
  4. for %%a in (Z Y X W V U T S R Q P O N M L K J I H G F E D C) do (
  5. if exist %%a:\ (
  6. echo;%%a: searching……
  7. pushd %%a:\
  8. for /f "delims=" %%b in ('dir /a-d-h/b "imdisk.txt" "isos.txt" 2^>nul') do echo;%%b
  9. popd
  10. )
  11. )
  12. echo;搜索完毕!
  13. pause
复制代码
发表于 2021-8-5 22:08:14 | 显示全部楼层
回复 3# xintiandi


WMIC是系统默认自带的命令,请参考Q-01观察一下详细的报错信息:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
 楼主| 发表于 2021-8-12 21:48:46 | 显示全部楼层
回复 4# idwma


    谢谢。
 楼主| 发表于 2021-8-12 21:49:00 | 显示全部楼层
回复 5# cmd1152


    非常感谢。
 楼主| 发表于 2021-8-12 21:50:09 | 显示全部楼层
回复 6# Batcher


    谢谢,没有想到一个小小的问题,还是很多热心的朋友都来回复。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 19:47 , Processed in 0.031748 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表