中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 17:26
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理查找的量词问题 查看 898 回复 1
楼 主 批处理查找的量词问题 发表于 2009-04-06 11:02 ·  中国 上海 浦东新区 电信
中级用户
★★
一看二跟三动手
积分 396
发帖 188
注册 2005-10-23 13:21
20年会员
UID 43919
来自 上海
状态 离线
批处理查找的量词问题
希望在代码中加入显示查找到的量词
要二种方法 1,跟据for 2,跟据%sheet%.txt文件行数减1
@echo off
cls
:loop
set filename=
set/p filename=请输入要查找的文件名(支持通配符,如"*.mp3 mp3.*"):
if not defined filename (cls & if errorlevel 1 cls&msg * dosz 提示:输入了错误的命令,这是为什么呢~,是否想忽悠?&goto loop)
echo.
set/p sheet=请输入要写入例表的文件名:┗┛可选项(不要扩占名)
set num=
ECHO ☆☆☆ %DATE% %time% ☆☆☆>%temp%\%sheet%.txt
set drv= C D E F G H I J K L M N O P Q R S T U V W X Y Z
for %%a in (%drv%) do (
if exist %%a:\nul (
cls&echo 正在搜索 %%a: 盘下的 %filename% ...
dir>nul 2>nul /s/b/a/o "%%a:\%filename%" >>%temp%\%sheet%.txt&&set num=1
)
)
if "%num%" == "1" (
@mode con cols=120
cls&echo.&echo.
color 1f
echo =========== 为你找到下列文件: "%filename%" 并保存到“%temp%\%sheet%.txt”文件中 ================
title 快速打开文件
echo.
for /f "delims=" %%i in (%temp%\%sheet%.txt) do echo %%i
) else (cls&echo.&echo.&echo ***** 没有找到文件: "%filename%" *****&pause>nul&GOTO :EOF)
start %temp%\%sheet%.txt
pause
*/. . . * .
.\* . * dosz
*/ . ./\~~~~~~~~~~~~'\. ^|◆
\* ,/,..,\,...........,\.◆
^|^| ..▎# ▎田 田 ▎ ^| ▎◆
^|^| ^&^&▎ ▎ ▎'^|'▎ o
^|^| ##■■■■■■■■■■〓
2 发表于 2009-04-11 05:48 ·  中国 上海 浦东新区 电信
中级用户
★★
一看二跟三动手
积分 396
发帖 188
注册 2005-10-23 13:21
20年会员
UID 43919
来自 上海
状态 离线
深度论坛liuss的提示下获得代码如下:
@echo off
for /f "delims=" %%a in (list.txt) do set/a n+=1
:: for /f "delims=" %%a in (list.txt) do set/a n+=1为list.txt文件的总行数。
set/a n=%n%-1
:: set/a n=%n%-1为去掉(echo %date% %time% >list.txt)写入日期的一行。
echo 查找到的文件总数为:%n% >>list.txt
pause
*/. . . * .
.\* . * dosz
*/ . ./\~~~~~~~~~~~~'\. ^|◆
\* ,/,..,\,...........,\.◆
^|^| ..▎# ▎田 田 ▎ ^| ▎◆
^|^| ^&^&▎ ▎ ▎'^|'▎ o
^|^| ##■■■■■■■■■■〓
论坛跳转: