CRP
Житель форума
Репутация: 72
Сообщений: 1065
Googlusclan
|
|
Ответ #5 : 11 Ноябрь 2007, 12:44
|
|
почитай про at, команда прикольная Отправлено: 10-11-2007 | 22:18:46 Расскажу здесь, что к чему, что бы все поняли!
итак, разберемся с задачей. Надо в определенный момент времени заархивировать что-нибудь. Для решения задачи воспользуемся командой at для планирования запуска команды: AT [\\имя_компьютера] время [/INTERACTIVE] [ /EVERY:день[,...] | /NEXT:день[,...]] "команда"
Я так понимаю, что задание должно выполнится на локальном компе, поэтому [\\имя_компьютера] опускаем AT время [/INTERACTIVE] [ /EVERY:день[,...] | /NEXT:день[,...]] "команда"
далее время, например 11:50, или 23:15 AT 11:50 [/INTERACTIVE] [ /EVERY:день[,...] | /NEXT:день[,...]] "команда"
/interactive - Разрешение взаимодействия задачи с пользователем, работающим на компьютере во время запуска задачи. Если указан данный параметр, то пользователь увидит окно винрара, в котором будет отображаться процесс архивации. Если не указан, то не увидит AT 11:50 /interactive [ /EVERY:день[,...] | /NEXT:день[,...]] "команда" или AT 11:50 [ /EVERY:день[,...] | /NEXT:день[,...]] "команда"
/every: Выполнение команды в указанный день или дни в течение недели или месяца (например каждый четверг или каждый третий день месяца). дата Задание даты выполнения команды. Имеется возможность указать один или несколько дней недели (т. е. ввести M,T,W,Th,F,S,Su) либо один или несколько дней месяца (т. е. ввести числа в диапазоне от 1 до 31). Несколько дат разделяются запятыми. Если параметр дата не задан, в команде at используется текущий день месяца. /next: Выполнение команды при наступлении следующей заданной даты (например в следующий четверг). например: /every:monday,friday,sunday или /every:3 или /next:friday
В моем предыдущем посте я опустил /every и /day, поэтому задача выполнялась один раз, после чего задача удалялась.
"команда" Задание команды Windows, программы (т. е. файл .exe или .com) или пакетного файла (т. е. файл .bat или .cmd), которые требуется выполнить. Если для задания команды необходимо указывать ее местоположение, имя файла задается полностью, с указанием пути и диска. Если команда запускается на удаленном компьютере, укажите имя сервера и сетевое имя в стандартном формате записи пути (UNC), а не имя диска этого компьютера.
===============================
Теперь, когда с планированием задачи разобрались, перейдем к архиватору. Из справки по архиватору, можно узнать формат коммандной строки: WinRAR <command> -<switch1> -<switchN> <archive> <files...> <@listfiles...> <path_to_extract\> Я не собираюсь перечислять все команды и переключатели, а опишу лишь те, что были использованы: <command> a - Add specified files and folders to an archive (Добавляет указанные файлы и папки к архиву) WinRAR a -<switch1> -<switchN> <archive> <files...> <@listfiles...> <path_to_extract\>
<switches> s - Create solid archive (Создать архив одним файлом) r - Enables subfolder recursion (разрешает рекурсивный обход по вложенным папкам)
WinRAR a -s -r <archive> <files...> <@listfiles...> <path_to_extract\>
<archive> - архив, к которому будут добавлены файлы <files...> - файлы для добавления к архиву <@listfiles> - Listfiles are plain text files that contain names of files to process. File names should start at the first column. It is possible to put comments to the listfile after // characters. (обыкновенные текстовые файлы, содержащие имена файлов для обработки Имена файлов находятся в первой колонке. Есть возможность добавить коментарии после //) <path_to_extract\> - Used only with commands e and x, indicating the folder in which to place extracted files. If this folder does not exist, it will be created. (Думаю, что тут все понятно. Используется только с командами e и x. Указывает папку, в которую будут разархивированы файлы. Если папка не существует, то она будет создана)
я использовал простейший вариант: WinRAR a -s -r <archive> <files...> таким образом, строка архиватора: "C:\Program Files\WinRar\winrar.exe" a -s -r C:\arch.rar C:\ToArchieve
===============================
Соберем все вместе: AT [\\имя_компьютера] время [/INTERACTIVE] [ /EVERY:день[,...] | /NEXT:день[,...]] "команда" + WinRAR <command> -<switch1> -<switchN> <archive> <files...> <@listfiles...> <path_to_extract\> = AT [\\имя_компьютера] время [/INTERACTIVE] [ /EVERY:день[,...] | /NEXT:день[,...]] WinRAR <command> -<switch1> -<switchN> <archive> <files...> <@listfiles...> <path_to_extract\> = AT [\\имя_компьютера] время [/INTERACTIVE] [ /EVERY:день[,...] | /NEXT:день[,...]] WinRAR <command> -<switch1> -<switchN> <archive> <files...> <@listfiles...> <path_to_extract\> = at 21:58 /interactive "C:\Program Files\WinRar\winrar.exe" a -s -r C:\arch.rar C:\ToArchieve
Надеюсь, теперь стало намного понятнее!
|