Войти

Показать полную графическую версию : записать в txt файл только часть имени файла.


Spacejet
20-10-2014, 17:02
Добрый день!

Есть допустим папка с файлами *.xml
Имена файлов 1111111_22222222_33333_4444_555.xml
Разница в именах файлов только "4444". Соответственно, как сделать так, чтобы bat`ник анализировал имена файлов в каталоге и записывал в .txt только часть имени состоящую из "4444"?

Например есть файлы в каталоге

*_*_*_0001_*.xml
*_*_*_0002_*.xml
*_*_*_0003_*.xml
*_*_*_0004_*.xml
*_*_*_0005_*.xml

После обработки созается файл xml.txt котором были строки
0001
0002
0003
0004
0005

Заранее благодарен!

Georgio
20-10-2014, 17:20
@echo off

set "dir=D:\Test"
set "list=list.txt"

pushd "%dir%"
2>nul del "%~dp0%list%"
for /f "delims=" %%i in ('"2>nul dir /a-d/b *.xml"') do (
for /f "tokens=4 delims=_" %%j in ("%%i") do (
echo %%j>>"%~dp0%list%"
)
)
popd

exit /b

Spacejet
20-10-2014, 18:18
Премного благодарен!




© OSzone.net 2001-2012