пакетный файл для копирования файлов в другое место?
можно ли создать пакетный файл для копирования папки в другое место при каждом входе в систему или при обновлении папки?
Это может быть написано в vb или java aswel, если это не простое решение.
какие идеи? Спасибо
8 ответов
два подхода:
-
при входе в систему: вы можете создать в своем
All Programs > Startup
папка с этим содержимым (это обычный текстовый документ):xcopy c:\folder\*.* d:\another_folder\.
использовать
xcopy c:\folder\*.* d:\another_folder\. /Y
перезаписать файл без каких-либо подсказок. каждый раз, когда изменяется папка: если вы можете использовать C#, вы можете создать программу с помощью
FileSystemWatcher
Открыть Блокнот.
введите в него следующие строки (очевидно, замените папки своими)
@echo off
rem you could also remove the line above, because it might help you to see what happens
rem /i option is needed to avoid the batch file asking you whether destination folder is a file or a folder
rem /e option is needed to copy also all folders and subfolders
xcopy "c:\New Folder" "c:\Copy of New Folder" /i /e
сохраните файл как резервное копирование.летучая мышь (нет .txt)
дважды щелкните файл, чтобы запустить его. Он создаст резервную копию папки и всех ее файлов/подпапок содержимого.
теперь, если вы хотите, чтобы пакетный файл запускался каждый раз при входе в Windows, вы должны поместить его в меню запуска Windows. Вы найдете его в: Пуск > Все программы > Запуск Чтобы поместить пакетный файл туда, перетащите его в меню "Пуск" или нажмите кнопку "Пуск" Windows и выберите "исследовать", "программы" > "запуск" и скопируйте туда пакетный файл.
для запуска пакетного файла каждый раз, когда папка обновляется вам нужно приложение, это не может быть сделано с помощью только пакетного файла.
пакетный файл для копирования папки легко.
xcopy /Y C:\Source\*.* C:\NewFolder
сохраните вышеизложенное как пакетный файл и запустите Windows при запуске.
чтобы сделать то же самое, когда папка обновляется сложнее, вам понадобится программа, которая контролирует папку каждый раз x и проверяет наличие изменений. Вы можете написать программу в VB / Java / whatever, а затем запланировать ее запуск каждые 30 минут.
легко скопировать папку в пакетном файле.
@echo off
set src_folder = c:\whatever\*.*
set dst_folder = c:\foo
xcopy /S/E/U %src_folder% %dst_folder%
и вы можете добавить этот пакетный файл в свой скрипт входа в систему Windows довольно легко (при условии, что у вас есть права администратора на машине). Просто зайдите в Панель управления "User Manager", выберите свойства для пользователей, выберите профиль и назначить сценарий входа в систему.
Как добраться до панели управления диспетчера пользователей зависит от того, какую версию Windows вы запускаете. Но щелкните правой кнопкой мыши Мой Компьютер и выберите управление и выберите Локальные пользователи и группы работает для большинства версий.
единственный липкий бит - "когда папка обновляется". Это звучит как Folder watcher, который вы не можете сделать в пакетном файле, но вы можете сделать довольно легко .Сеть.
robocopy yourfolder yourdestination /MON:0
должен это сделать, хотя вам могут потребоваться дополнительные параметры. Коммутатор в конце будет повторно запустить robocopy, если больше, чем 0 изменений видны.
@echo off cls echo нажмите любую клавишу, чтобы продолжить резервное копирование ! пауза команда xcopy c:\users\file*.* e:\backup*.* / s / e Эхо резервного копирования пауза
file = имя файла, который вы хотите скопировать
backup = где вы хотите, чтобы файл был перемещен в
надеюсь, что это помогает
@echo off
xcopy ...
заменить ...
с соответствующими аргументами xcopy для копирования, что вы хотите скопировать.