Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Перенос файлов в DOS по маске

Модерирует : KLASS, IFkO

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

ashomich

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно ли перенести файлы из C:\XXX\*.* в C:\YYY\*.*, выбрав файлы по дате?
Т.е. все файлы из C:\XXX с датой = (дата текущая - 30 дней) перенести в C:\YYY ???
Надо запихнуть такую строку в autoexec.bat.
Про silence mode для scandisk вроде вспомнил со скрипом, а это не знаю (может и нет такого вовсе).  

Всего записей: 30 | Зарегистр. 30-09-2004 | Отправлено: 12:48 09-09-2005
Gena1971



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
может и нет такого вовсе

Тоже не знаю, но составить програмку такую как 2 пальца об асфаль. Ну очень простая. И наверное по времени займет это намного меньше, чем будешь ждать ответа.

Всего записей: 2567 | Зарегистр. 25-01-2005 | Отправлено: 13:29 09-09-2005
Alan Mon

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ashomich
У тебя чистый ДОС или командная строка в WIN? Если второе

Код:
forfiles -pC:\XXX -d-30 -c"cmd /c move @file C:\YYY"

forfiles встроена в WinXP, для Win2000 лежит в Resource Kit.

----------
Ребята, давайте жить дружно. Кот Леопольд

Всего записей: 1116 | Зарегистр. 22-07-2004 | Отправлено: 14:44 09-09-2005
ashomich

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеем чистый DOS 6.22 (на кассе). Надо для автоматического очищения каталога с базами и переноса их в другую папку для сохранения.
 
Добавлено:
2 Gena1971

Цитата:
но составить програмку такую как 2 пальца об асфаль

 
С написнием программки еще хуже - не умею.

Всего записей: 30 | Зарегистр. 30-09-2004 | Отправлено: 15:48 09-09-2005
Looking



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
RAR в командной строке может выбирать файлы, созданные до или после определенной даты, но надо смотреть работает ли он в 16-разрядном DOS режиме. Как вариант попробывать его работу под чистом DOS на основе Windows 98 (режим командной строки)
Если в последнем случае будет работать, то возможна замена DOS 6.22 на DOS 7

Всего записей: 1814 | Зарегистр. 02-06-2004 | Отправлено: 16:24 09-09-2005
igor_andreev

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
надо смотреть работает ли он в 16-разрядном DOS режиме.

Есть версия специально для DOS и OS/2  
_http://www.rarlab.com/rar/rarx350.exe (627 Кб)

Всего записей: 1705 | Зарегистр. 08-12-2004 | Отправлено: 02:33 10-09-2005
bredonosec



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Имеем чистый DOS 6.22
- В сети когда-то нарыл обзор команд и драйверов на 6,22.
Согласно ему, имеется команда IF
IF [NOT] ERRORLEVEL число команда
IF [NOT] строка1==строка2
IF [NOT] EXIST имя_файла команда
Если условие принимает истинное значение, команда выполняется, если нет - игнор. Параметр not определяет выполнение команды только в случае если условие ложно.
А также команда FOR
FOR %%переменная IN (множество) DO команда [параметры]
FOR %переменная IN (множество) DO команда [параметры]
 - в первом случае выполнение для каждого файла, во втором - для набора. Команда фор заменяет переменную текстом каждой строки в заданном множестве, пока команда после ключевого слова DO не обработает все файлы множества.
Напр,  
for %f in (*.dat) do find "PC Magazine" %f
 - найти во всех дат-файлах строку "PC Magazine"
for %f in (*.dat *.rpt) do print %f
или do type %f > prn:
 - распечатать все файлы в текущем каталоге..
Для перемещения можно или  
MOVE [/Y /-Y][disc:][маршрут]имя_файла[,[disc:][маршрут]имя_файла[...]] приемник
где диск, маршрут и имя файла - место расположения и имя перемещаемого файла/файлов, а приемник - куда положить.
/y - заменить без запроса
/-y - запрос на подтверждение при затирание вне зависимости от параметров по умолчанию или в copycmd
или комбинацию из  
xcopy источник [приемник] [/y /-y] [/A /M] [D:date] [/P] [/S [/E]] [/V] [/W]
где - источник - откуда и что (диск, каталог, имя/имена), приемник - куда кинуть.
Копирует каталоги, их подкаталоги и файлы.
параметры:
/А - копировать только с аттрибутом архивный
/М то же самое, но сбрасывает архивный бит
D:date - копирует только файлы, модифицированные после фиксированной даты (формат зависит от страны)
/Р выводит запрос на подтверждение при создании каждого файла
/S копирует папки, если они не пусты
/Е копирует все папки, даже если пусты (используется вместе с предыдущим)
/V проверяет каждый файл-копию на идентичность исходному
/W выводит перед началом копирования "press any key to begin copying files"  
 
и  
DEL [диск:][маршрут]имя_файла [/P]  
или
DELTREE [/Y] [диск:]маршрут
(в первом случае по одному файлу убивает, во втором - каталог со всем содержимым.
 
Поскольку способ проверки условия даты отдельно не вспомнил (хоть и старался), могу предложить только что-нить вроде
 
movebase.bat
-----------------
rem *************************************
rem ***                               ***
rem ***  Files` moving test           ***
xcopy D:\1\ D:\2\ /y /D:18.08.2005 /S /E /V /W
deltree /y D:\1\
end
-----------------
 
Только что проверил - работает на все сто. ))
Последняя строка необходима для закрытия окна дос после выполнения батника под вынью.

Всего записей: 16269 | Зарегистр. 13-02-2003 | Отправлено: 07:01 10-09-2005
Looking



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подсказанный igor_andreev, современный RAR под DOS имеет такие же ключи,  как WinRar командной строки.
Поэтому RAR удобно использовать для указанных манипуляций. При этом старые файлы будут занимать меньше места. Возможна генерация имени файла на основе даты.
Формат даты, как я понял, может включать и время.

Всего записей: 1814 | Зарегистр. 02-06-2004 | Отправлено: 09:38 12-09-2005
Gena1971



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bredonosec
Но надо еще что бы команда выполнялась раз в месяц. Я так понимаю, если она стоит autoexec.bat. А эта будет при каждой перезагрузке работать. А ashomich надо чтоб раз в месяц и за весь месяц.

Всего записей: 2567 | Зарегистр. 25-01-2005 | Отправлено: 15:33 12-09-2005 | Исправлено: Gena1971, 15:42 12-09-2005
ashomich

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bredonosec писал(а)
"Но надо еще что бы команда выполнялась раз в месяц. Я так понимаю, если она стоит autoexec.bat. А эта будет при каждой перезагрузке работать. А ashomich надо чтоб раз в месяц и за весь месяц."
Именно в autoexec этот блок и будет жить. Т.е.каждый день при включении кассы база будет очищаться на один день 30-ти дневной давности (база на кассе всегда = последним 30 дням).
 
Спасибо всем кто откликнулся.

Всего записей: 30 | Зарегистр. 30-09-2004 | Отправлено: 17:32 12-09-2005
zhang163

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GOOD I NEED




Предупреждение за флуд.

Всего записей: 2 | Зарегистр. 13-09-2005 | Отправлено: 19:12 13-09-2005 | Исправлено: Demetrio, 20:31 13-09-2005
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Перенос файлов в DOS по маске


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru