我正在尝试通过记事本制作批处理文件,以实质上自动化将文件从驱动器移动到驱动器的过程。
我的目标是将文件从我的H驱动器移动到我的A驱动器,H:\Arco\examplefile.csv
到\A:\DSE\Open_Access_Data\ARCo
。
如果可能的话,我还想让这项工作每30分钟自动运行一次。但如果我需要点击它,那就这样吧。到目前为止,我所要做的就是将文件复制到我的桌面。我似乎无法让它介于我的目录之间。
COPY H:\dehpc14_Disk_Quota_Report.csv %userprofile%\Desktop
答案 0 :(得分:1)
这应该有效:
: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,则输入批处理文件的完整路径。
答案 1 :(得分:0)
在Unix中使用cron之类的命令来设置定时间隔以运行自动副本等程序。有关Windows的类似cron的版本,请参阅Stack Overflow问题 What is the Windows version of cron? 。
要从一个驱动器复制到另一个驱动器,请使用
copy filepath1 filepath2
其中filepath1
是H:\path-to-file
而filepath2
是A:\path-to-file
。