Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] батник для apxивaции набора пaпок

Ответить
Настройки темы
CMD/BAT - [решено] батник для apxивaции набора пaпок

Ветеран


Сообщения: 580
Благодарности: 2

Профиль | Отправить PM | Цитировать


Пpoсьбa o пoмoщи к пpoфи. Кaк нaписaть пaкетный фaйл, apхивиpующий нaбop пaпoк (oни пеpечисл. в текстoвoм фaйле) в pезеpвную кoпию , и чтoбы oн aвтoмaтически генеpиpoвaл имя типa гoд_месяц_день#чaс_минутa.zip. Нaпpимеp (2013_06_10#20_10) испoльзуя язык пaкетных кoмaнд винды, и apхивaтop 7Zip. Вpемя дo пoлудня дoпoлнять лидиpующими нулями.

Отправлено: 20:13, 10-06-2013

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

call :GetDateTime
set sFileName=%DateTime:~0,4%_%DateTime:~4,2%_%DateTime:~6,2%#%DateTime:~8,2%_%DateTime:~10,2%.zip

set sFolderList=%~1

if defined sFolderList (
	if exist "%sFolderList%" (
		"%ProgramFiles%\7-Zip\7z.exe" a -ir@%sFolderList% "%sFileName%"
	) else (
		echo Can't find folder list file [%sFolderList%].
	)
) else (
	echo Usage: %~nx0 ^<Folder list^>
)

endlocal
exit /b 0

rem ==========================================================================
rem Функция GetDateTime()
rem
rem Серый форум / CMD/BAT: получение формата дата-время для имени файла
rem (http://forum.script-coding.com/viewtopic.php?id=5066)
rem ==========================================================================
:GetDateTime
	setlocal enableextensions enabledelayedexpansion
	
	set sProcName=%~0
	for /f "delims=." %%i in ('wmic.exe OS get LocalDateTime ^| find "."') do set sDateTime=%%i
	
	endlocal & set %sProcName:~4%=%sDateTime:~0,14%
	exit /b 0
rem ==========================================================================
О формате файла-списка, содержащего имена файлов и папок, прочтите в документации:
Код: Выделить весь код
hh.exe "mk:@MSITStore:%ProgramFiles%\7-Zip\7-zip.chm::/cmdline/syntax.htm#ListFile"
Обратите внимание на кодировку файла-списка.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:42, 10-06-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 580
Благодарности: 2

Профиль | Отправить PM | Цитировать


Iska, Снимаю шляпу!! Спасибо за Вашу помощь. А что такое Rem Серый форум
и код файла списка это уже отдельный батник?

Отправлено: 14:34, 11-06-2013 | #3


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата r-studio:
А что такое Rem Серый форум »
Серый форум
читать дальше »
конкретно приведена ссылка на тему с использованным кодом: CMD/BAT: получение формата дата-время для имени файла (Страница 1) — CMD/BAT — Серый форум, идея которого, в свою очередь, была почерпнута из поста тутошнего участника amel27. Вот такой круговорот воды идей в природе.


Цитата r-studio:
и код файла списка это уже отдельный батник? »
Отдельный текстовый файл:
Цитата r-studio:
нaбop пaпoк (oни пеpечисл. в текстoвoм фaйле) »
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:06, 11-06-2013 | #4


Аватара для vanoman

Ветеран


Сообщения: 549
Благодарности: 0

Профиль | Отправить PM | Цитировать


Кстати давно себе тоже искал подобную тему!

Отправлено: 08:49, 12-06-2013 | #5


Ветеран


Сообщения: 580
Благодарности: 2

Профиль | Отправить PM | Цитировать


Iska,
т.е. эту часть кода
читать дальше »
rem ==========================================================================
rem Функция GetDateTime()
rem
rem Серый форум / CMD/BAT: получение формата дата-время для имени файла
rem (http://forum.script-coding.com/viewtopic.php?id=5066)
rem ==========================================================================
:GetDateTime
setlocal enableextensions enabledelayedexpansion

set sProcName=%~0
for /f "delims=." %%i in ('wmic.exe OS get LocalDateTime ^| find "."') do set sDateTime=%%i

endlocal & set %sProcName:~4%=%sDateTime:~0,14%
exit /b 0
rem ==========================================================================


можно опустить?

Отправлено: 10:29, 12-06-2013 | #6


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Опустить эту часть кода, конечно, можно. Только вот оставшаяся часть кода пакетного файла без этого работать не будет .
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:59, 12-06-2013 | #7


Ветеран


Сообщения: 580
Благодарности: 2

Профиль | Отправить PM | Цитировать


вроде делал все так, но ошибка пути нашлась?

Последний раз редактировалось r-studio, 16-06-2013 в 10:10.


Отправлено: 22:31, 14-06-2013 | #8


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


r-studio, на Вашем скриншоте невозможно разобрать буквы.

Отправлено: 03:33, 15-06-2013 | #9


Ветеран


Сообщения: 580
Благодарности: 2

Профиль | Отправить PM | Цитировать


Iska,
давайте прикреплю её.))

Последний раз редактировалось r-studio, 28-07-2013 в 14:53.


Отправлено: 16:12, 15-06-2013 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] батник для apxивaции набора пaпок

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Батник для конвертирования данных в кодировку 1200 для reg-файла Nun-Nun Скриптовые языки администрирования Windows 5 23-01-2012 16:21
Офис и Текст - [решено] Ищу программу для набора книг на печать Erix Программное обеспечение Windows 3 27-05-2011 14:06
ошибку JRNL_WRAP_ERROR для набора репликации "DOMAIN SYSTEM VOLUME (SYSVOL SHARE) AlexMun Microsoft Windows NT/2000/2003 8 07-07-2009 14:20
батник для NTOS admart Лечение систем от вредоносных программ 2 17-10-2008 23:36




 
Переход