Это должно работать:
:LOOP
copy H:\Arco\examplefile.csv A:\DSE\Open_Access_Data\ARCo /y
timeout /t 1800
goto :LOOP
Это будет копировать файлы через каждые 30 секунд и перезаписывать существующие файлы.
Примечание: команда timeout
доступна только в Vista и выше, если вам нужно использовать это на XP, дайте мне знать.
Для запуска командного файла при запуске системы вы можете либо поместить его в папку автозагрузки пользователя, либо использовать реестр.
Папка запуска для текущего пользователя
C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Для всех пользователей
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
Или вы можете использовать реестр, который лично я предпочитаю. Создать строковое значение с пути вашего пакетного файла в
Текущий пользователь
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
Компьютерные пользователи
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Оба варианта реестра будут требовать права администратора, хотя.
Для этого либо запуска или реестра в пакетном режиме, соответственно
copy %0 "C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup" /y
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v "MyBatchFile" /d "%0" /f
Какой будет либо копировать себя в автозагрузку или добавить себя в реестр каждый раз, когда он работает. Таким образом, вы можете сделать это вручную или сделать это самостоятельно (над командами) с первого запуска.
%0
- это собственный путь к пакетным файлам, если вы хотите использовать команды из другого места или просто из cmd, а затем введите полный путь к пакетному файлу.
Если вы не используете cygwin, это не вопрос bash. –
Да, где 'bash' в этом вопросе? Я искал приглашение $ prompt, его там нет. –
извините, ребята, я хотел поставить пакет не bash, теперь редактировался в сообщении – Zenaphor