Батник для резервного копирования

Мануал

Иногда хочется хочется не только любви, славы и карьеры, а еще и некоторой автоматизации.

Опять же по примеру прошлой статьи  вернемся немного к основам.

Хочу рассказать о том, как написать простой батник для резервного копирования из определенного источника по указанному пути.

Копирует файлы и каталоги, включая подкаталоги. Ниже приведен синтаксис работы.

Синтаксис утилиты xcopy

xcopy источник [результат] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:мм-дд-гггг]] 
[/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:файл1[+[файл2]][+[файл3]] [{/y|/-y}] [/z]

Параметры

источник Обязательный параметр. Задает местонахождение и имена файлов для копирования. Параметр должен задавать или диск, или путь. результат Задает место, куда будут скопированы файлы. Параметр может включать имя диска с двоеточием, имя каталога, имя файла или их комбинацию. /w Выводит следующее сообщение с ожиданием подтверждения начала копирования:

Нажмите любую клавишу, чтобы начать копирование файлов

/p Запрашивает подтверждение при создании каждого файла-результата. 
/c Игнорирует ошибки. 
/v Проверяет каждый скопированный файл на соответствие его оригиналу. 
/q Отменяет вывод на экран сообщений команды xcopy. 
/f Выводит имена исходных файлов и файлов-результатов в процессе копирования. 
/l Отображает список копируемых файлов. /g Создает незашифрованные файлы-результаты. 
/d[:мм-дд-гггг] Копирует только файлы, измененные не ранее заданной даты. 
Если не включить значение мм-дд-гггг, команда xcopy копирует все файлы-источники, которые новее существующих файлов-результатов. 
Эта возможность позволяет обновлять только измененные файлы. /u Копирует (обновляет) только те файлы-источники, которые уже существуют в каталоге результата.
 /i Если источником является каталог или источник содержит подстановочные знаки и результат не существует, команда xcopy считает, что результат — это имя каталога, и создает новый каталог. 
Затем xcopy копирует все указанные файлы в новый каталог. По умолчанию команда xcopy запрашивает подтверждение, является ли параметр результат каталогом или файлом.
 /s Копирует каталоги и подкаталоги, если они не пусты. Если параметр /s не задан, команда xcopy будет работать только с одним каталогом. /e Копирует все подкаталоги, включая пустые.
 Параметр /e используется с параметрами /s и /t. 
/t Копирует только структуру подкаталога (т. е. дерево), а не файлы. Для копирования пустых каталогов следует задать ключ /e. 
/k Копирует файлы с атрибутом «только для чтения» с сохранением этого атрибута для скопированных файлов, оригиналы которых имеют этот атрибут.
 По умолчанию команда xcopy удаляет атрибут «только для чтения». /r Копирует файлы с атрибутом «только для чтения». 
/h Копирует системные и скрытые файлы. По умолчанию команда xcopy не копирует системные и скрытые файлы. 
/a Копирует только те файлы, которые имеют установленный атрибут «архивный». При использовании параметра /a атрибут "архивный" у исходных файлов не меняется.
 Сведения об установке атрибутов с помощью команды attrib см. по ссылке «». /m Копирует только те файлы, которые имеют установленный атрибут «архивный». 
В отличие от параметра /a, параметр /m очищает атрибут «архивный» у скопированных файлов.
 Сведения об установке атрибутов с помощью команды attrib см. по ссылке «».
 /n Копирует с использованием коротких имен файловой системы NTFS. Параметр /n требуется при копировании из файловой системы NTFS в файловую систему FAT 
или когда на диске-результате требуется использование соглашения об именах файлов как в файловой системе FAT (8.3). Файлы могут записываться в файловую систему FAT или NTFS. 
/o Копирует сведения о принадлежности файлов и избирательной таблице управления доступом (DACL). 
/x Копирует сведения о параметрах аудита файла и системной таблице управления доступом (SACL) (подразумевается наличие /p). /exclude:файл1[+[файл2]][+[файл3]]
Определяет список файлов, содежащих строки. /y 
Устраняет выдачу запроса на подтверждение перезаписи существующего конечного файла. /-y 
Выдает запрос на подтверждение перезаписи существующего конечного файла. /z 
Копирует по сети в режиме перезапуска. /? Отображает справку в командной строке. 


Создаем тестовый файл с содержанием:

xcopy C:\itsecforu.ru\copy C:\itsecforu.ru\backup /f /i /y /s 

Где C:\itsecforu.ru\copy – то что мы копируем, а C:\itescforu.ru\backup – путь куда копируем.

Переименовыем файл из .txt в .bat и при необходимости запускаем 🙂

 www.itsecforu.ru

Добавить комментарий