.bak файлы
Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik
- Вахмурка
- Сообщения: 2587
- Зарегистрирован: Пн дек 27, 2004 14:47
- Откуда: Большая деревня Москва
- Контактная информация:
Вопрос, конечно, интересный.
Если передать кнопке ТС параметр %L (и ряд подобных - см. справку), то ТС создает во временной директории файл. Тот содержит список выделенных файлов или текущий, если ничего не выделено. Если "скормить" этот файл батнику, то с помощью команды shift можно однотипно обрабатывать все файлы. Но я не знаю, как заставить батник таскать имена из файла по одному. Из командной строки - легко, из файла - похоже, нельзя.
А раз батник оказывается бессильным, пишем скрипт, которому передаем параметр %L. Например:
http://powerpro.wincmd.ru/Scripts/ListDateTime.htm
http://powerpro.wincmd.ru/Scripts/MultiCopy.htm
Если передать кнопке ТС параметр %L (и ряд подобных - см. справку), то ТС создает во временной директории файл. Тот содержит список выделенных файлов или текущий, если ничего не выделено. Если "скормить" этот файл батнику, то с помощью команды shift можно однотипно обрабатывать все файлы. Но я не знаю, как заставить батник таскать имена из файла по одному. Из командной строки - легко, из файла - похоже, нельзя.
А раз батник оказывается бессильным, пишем скрипт, которому передаем параметр %L. Например:
http://powerpro.wincmd.ru/Scripts/ListDateTime.htm
http://powerpro.wincmd.ru/Scripts/MultiCopy.htm
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
- Вахмурка
- Сообщения: 2587
- Зарегистрирован: Пн дек 27, 2004 14:47
- Откуда: Большая деревня Москва
- Контактная информация:
Отлично - стимул есть. Значит, снимаем с пыльной полки учебник по DOS, или по-современному качаем, или поглядываем в мой, и пробуем.
Получится - похвастайся.
Получится - похвастайся.
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
belorus, бэкапить надёжнее не в .bak, а в архив. Да и кнопок для архивации написано уже на небольшую панельку. Но если хочешь именно .bak, то получай:
----------------------------------- bak.cmd -----------------------------------
@echo off
chcp 1251 > nul
for /f "delims=" %%a in (%1) do copy /b "%%a" "%%~nxa.bak"
----------------------------------- bak.cmd -----------------------------------
---------------------------- кнопка ----------------------------
TOTALCMD#BAR#DATA
%commander_path%\bak.cmd
%L
%commander_path%\WCMICONS.DLL,39
.bak-копии выделенных файлов
-1
---------------------------- кнопка ----------------------------
----------------------------------- bak.cmd -----------------------------------
@echo off
chcp 1251 > nul
for /f "delims=" %%a in (%1) do copy /b "%%a" "%%~nxa.bak"
----------------------------------- bak.cmd -----------------------------------
---------------------------- кнопка ----------------------------
TOTALCMD#BAR#DATA
%commander_path%\bak.cmd
%L
%commander_path%\WCMICONS.DLL,39
.bak-копии выделенных файлов
-1
---------------------------- кнопка ----------------------------
Последний раз редактировалось Tol!k Сб окт 18, 2008 17:12, всего редактировалось 1 раз.
- Вахмурка
- Сообщения: 2587
- Зарегистрирован: Пн дек 27, 2004 14:47
- Откуда: Большая деревня Москва
- Контактная информация:
2Tol!k
Круто. Жаль, я уже ушел с батников на скрипты.
2Batya
Это неспортивно - тут народ именно позаморачиваться хочет.
Круто. Жаль, я уже ушел с батников на скрипты.
2Batya
Это неспортивно - тут народ именно позаморачиваться хочет.
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
а возможно, чтобы батник прописывал в имени дату+время создания бэкапа?Tol!k писал(а):если хочешь именно .bak, то получай:[/size]
----------------------------------- bak.cmd -----------------------------------
@echo off
chcp 1251 > nul
for /f "delims=" %%a in (%1) do copy /b "%%a" "%%~nxa.bak"
----------------------------------- bak.cmd -----------------------------------
что то типо:
totalcmd_20120711(0416).bak
(*в скобках - час+минута)
Код: Выделить всё
@echo off &setlocal enableextensions
:: .bak-копии выделенных файлов
:: Параметры: "список" "штамп"
:: Например: "%WL" ".YY_MM_DD.(hh-nn-ss)"
:: Автор: Tol!k
for /f "skip=1 delims=." %%d in (
'wmic.exe OS Get LocalDateTime ^|findstr .'
) do set "DateTime=%%d"
set "stamp=%~2"
call set "stamp=%%stamp:YY=%DateTime:~0,4%%%"
call set "stamp=%%stamp:MM=%DateTime:~4,2%%%"
call set "stamp=%%stamp:DD=%DateTime:~6,2%%%"
call set "stamp=%%stamp:hh=%DateTime:~8,2%%%"
call set "stamp=%%stamp:nn=%DateTime:~10,2%%%"
call set "stamp=%%stamp:ss=%DateTime:~12,2%%%"
for /f "delims=" %%a in ('type %1') do copy /b "%%a" "%%~nxa%stamp%.bak"
Последний раз редактировалось Tol!k Чт июл 12, 2012 01:51, всего редактировалось 1 раз.
Tol!k, замечательно! Спасибо!
Вот только минуты некорректно отображает:
на часах - 23ч:38м:56с
скрипт пишет - 23-07-56.bak
может в двенадцатичасовом режиме, округляя минуты...
возможно поправить? или с чем может быть связано?
в параметрах указал:
"%WL" ".YY_MM_DD.(hh-mm-ss)"
p.s.
в целом отлично, устраивает полностью и так... тут уж из любви к искусству, допилить до совершенства.
Вот только минуты некорректно отображает:
на часах - 23ч:38м:56с
скрипт пишет - 23-07-56.bak
может в двенадцатичасовом режиме, округляя минуты...
возможно поправить? или с чем может быть связано?
в параметрах указал:
"%WL" ".YY_MM_DD.(hh-mm-ss)"
p.s.
в целом отлично, устраивает полностью и так... тут уж из любви к искусству, допилить до совершенства.
o_Oslideray писал(а):на часах - 23ч:38м:56с
скрипт пишет - 23-07-56.bak
запусти
Код: Выделить всё
@wmic.exe OS Get LocalDateTime
@echo %date% %time%
@pauseLocalDateTime
20120712002640.683000+240
12.07.2012 0:26:40.69
я так понял отдельным cmd-файлом запускать. Пишет:
после запуска этого файла минуты всё равно имеют значение "07". Это следовательно не зависит от времени.
Код: Выделить всё
LocalDateTime
20120712010342.214000+240
12.07.2012 1:03:42,24
Для продолжения нажмите любую клавишу . . .