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

Немного предыстории: мы получаем вторую неделю каждого месяца выдержку из файлов данных, всего 14, в папке, помеченной этим соглашением об именах, DatabaseFilesyyyymmdd, на одном из наших общих дисков (\\server1\receptacle). После получения другая команда проверяет данные, а затем сообщает нашей команде, что они готовы к загрузке в существующую таблицу Oracle. Мы копируем файлы (не папку) на другой сетевой диск (\\server2\loading) и запускаем скрипт.

Естественно, эта новая папка называется с той же датой извлеченных файлов данных. Целью является создание .bat-файла, который мы могли бы запустить для автоматизации рутинной работы по копированию, но изменчивость имен новых папок привела меня в тупик при написании сценариев. Любая помощь приветствуется.

Редактировать: возможно, способ найти и записать имя самой последней созданной папки в \receptable - это то, что я пытаюсь выяснить при копировании файлов на другой диск.

1 ответ1

0

Это звучит так, как будто вы хотите некоторый уровень ручного управления, чтобы ваша команда могла проверить это в первую очередь.

Сделайте так, чтобы и пакетный файл, и сценарий запуска принимали имя папки в качестве параметра (командной строки), а затем вызывали пакетный файл с именем папки, которое он может использовать для копирования, а затем передавали его в исходное состояние. скрипт.

Вы можете создать собственную цель «Отправить» для контекстного меню проводника, так что вы просто выбираете и нажимаете.

Если вам нужна ситуация с отслеживаемой папкой, создайте новую папку для 1-й группы, чтобы перетаскивать файлы в папку "validated", и ваш пакетный файл должен убедиться, что в проверенной папке только одна задание. Может быть, с настройкой типа "canary file", чтобы задание не запускалось во время передачи файлов.

Если вам нужно отразить папку "receptacle" в "loading", используйте robocopy, чтобы избежать ненужного повторного копирования.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .