Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] имена файлов и общий вес в тхт (http://forum.oszone.net/showthread.php?t=292118)

Anufriev 05-12-2014 07:29 2439858

имена файлов и общий вес в тхт
 
Добрый день!

подскажите, пожалуйста, как реализовать данную задачу:

в папке C:\terr\GGGGMMDD лежит куча файлов, из них нужны два файла *IP.JPG и *PO.DBF

по этим файлам необходимо выводить инофрмативный iesDDMMGGGG.txt файл в каталог C:\terr\sa\

Код:

Тра-ла-ла "Кукушкино" (ОАО) "Новосибирский"
DD.MM.GGGG
HH:MM
10894644 - вес двух файлов
*IP.JPG
*PO.DBF
Файлы успешно приняты

Буду весьма благодарен помощи

Anufriev 05-12-2014 12:11 2439926

товарищи, я конечно написал батник который работает, но по моему он очень корявый:)
покажите, пожалуйста, как его привести в порядок, я правда учусь писать:) надо ещё учиться красиво писать...

остановился на этом варианте
Код:

Echo off

set "txt=C:\terr\sa\ies%date:~6,4%%date:~3,2%%date:~0,2%.txt"
set "d=%date:~0,2%.%date:~3,2%.%date:~6,4%"
set "t=%Time:~0,2%:%Time:~3,2%"
set "In=C:\terr\"

rem узнаем размер JPG файла
for /f "delims=" %%a in ('dir /b/a-d "%In%*IP.JPG" 2^>nul') do set "a=%%~za"

rem узнаем размер DBF файла
for /f "delims=" %%b in ('dir /b/a-d "%In%*PO.DBF" 2^>nul') do set "b=%%~zb"

rem высчитываем общий размер файлов
set /A Bytes=%a%+%b%

rem определяем начало имени файлов JPG и DBF
for /f "tokens=1 delims=PO." %%i in ('dir /B /d "%In%*PO.DBF"') do set "i=%%i"

rem выводим нужную информацию в txt файл
echo Тра-ла-ла "Кукушкино" (ОАО) "Новосибирский" >> "%txt%"
echo %d% >> "%txt%"
echo %t% >> "%txt%"
echo %Bytes% >> "%txt%"
echo %i%IP.JPG >> "%txt%"
echo %i%PO.DBF >> "%txt%"
echo Файлы успешно приняты >> "%txt%""


megaloman 05-12-2014 13:11 2439938

Не блеск но работает. Возможно, вид текста не устроит. Если принципиально, переделаю.
Код:

@Echo Off

Set "File1=1b347ND_1700469.fls"
Set "File2=2HPFWUP840.iso"

Set "Out=ies%Date:~0,2%%Date:~3,2%%Date:~6,4%.txt"

Echo Тра-ла-ла "Кукушкино" (ОАО) "Новосибирский">>"%Out%"
Echo %Date:~0,2%.%Date:~3,2%.%Date:~6,4%>>"%Out%"

Set T=%Time: =0%
Echo %T:~0,5%>>"%Out%"

SetLocal EnableExtensions EnableDelayedExpansion

Set "Sum=0 файлов 0 байт"
Set "Last="

If Exist "%File1%" If Exist "%File2%" Call :Summa &Echo %File1%>>"%Out%"&Echo %File2%>>"%Out%"&Echo Файлы успешно приняты>>"%Out%" &GoTo :Eof
If Exist "%File1%" Call :Summa &Echo %File1%>>"%Out%"&Echo Файлы успешно приняты>>"%Out%"&GoTo :Eof
If Exist "%File2%" Call :Summa &Echo %File2%>>"%Out%"&Echo Файлы успешно приняты>>"%Out%"&GoTo :Eof

Echo Вес %Sum%>>"%Out%"
Echo Файлы неуспешно приняты>>"%Out%"

GoTo :Eof

:Summa
 
FOR /F "usebackq tokens=*" %%i in (`dir "%File1%" "%File2%" 2^>nul`) do Set Sum=!Last!&Set Last=%%i
Echo Вес %Sum%>>"%Out%"

GoTo :Eof


Anufriev 05-12-2014 19:28 2440059

Благодарю, сравнил батники Ваш и мой, понял, что у меня не все так плачевно, как я думал, но черпать мне ещё много нужно у таких людей как Вы:)


Время: 10:43.

Время: 10:43.
© OSzone.net 2001-