批处理文件将文件复制到另一个位置?

时间:2010-02-03 20:33:06

标签: batch-file

是否可以创建批处理文件,以便在每次登录时或在文件夹更新时将文件夹复制到另一个位置?

如果不是一个简单的解决方案,它可以用vb或java aswel编写。

有什么想法吗?感谢

8 个答案:

答案 0 :(得分:9)

两种方法:

  • 登录时:您可以使用此内容(纯文本文档)在copy_my_files.bat文件夹中创建All Programs > Startup文件:

    • xcopy c:\folder\*.* d:\another_folder\.

    使用xcopy c:\folder\*.* d:\another_folder\. /Y在没有任何提示的情况下覆盖文件。

  • 每次文件夹更改时:如果您可以使用C#,则可以使用FileSystemWatcher

  • 创建程序

答案 1 :(得分:3)

@echo off
copy con d:\*.*
xcopy d:\*.* e:\*.*
pause

答案 2 :(得分:1)

打开记事本。

在其中键入以下行(显然用您的文件夹替换文件夹)

@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

将文件另存为 backup.bat(非.txt)

双击该文件以运行它。它将备份文件夹及其所有内容文件/子文件夹。

现在,如果您希望每次在Windows中登录时都运行批处理文件,则应将其放在Windows“启动”菜单中。你找到它:开始>所有程序>启动 要将批处理文件放入其中,请将其拖到“启动”菜单中,或者单击“Windows START”按钮并单击“开始”按钮,然后选择“浏览”,进入“程序”>启动,并将批处理文件复制到那里。

要在每次更新文件夹时运行批处理文件,您需要一个应用程序,只能使用批处理文件来完成。

答案 3 :(得分:0)

复制文件夹的批处理文件很简单。

xcopy /Y C:\Source\*.* C:\NewFolder

将上述内容保存为批处理文件,并让Windows在启动时运行。

要在更新文件夹时做同样的事情比较复杂,您需要一个程序每隔x次监视一次文件夹并检查更改。您可以用VB / Java /编写程序,然后安排它每隔30分钟运行一次。

答案 4 :(得分:0)

在批处理文件中复制文件夹很容易。

 @echo off
 set src_folder = c:\whatever\*.*
 set dst_folder = c:\foo
 xcopy /S/E/U %src_folder% %dst_folder%

您可以非常轻松地将该批处理文件添加到Windows登录脚本中(假设您拥有该计算机的管理员权限)。只需转到“用户管理器”控制面板,为您的用户选择属性,选择配置文件并设置登录脚本。

如何访问用户管理器控制面板取决于您运行的Windows版本。但是右键单击我的电脑并选择管理,然后选择本地用户和组适用于大多数版本。

唯一的粘性位是“文件夹更新时”。这听起来像一个文件夹观察器,你不能在批处理文件中做,但你可以很容易地使用.NET。

答案 5 :(得分:0)

robocopy yourfolder yourdestination /MON:0

应该这样做,尽管你可能还需要更多选择。如果看到的变化超过0,则最后的开关将重新运行robocopy。

答案 6 :(得分:0)

@echo off CLS echo按任意键继续备份! 暂停 xcopy c:\ users \ file *。* e:\ backup *。* / s / e echo备份完成 暂停

file =您要复制的文件的名称

backup =你希望将文件移动到

希望这有帮助

答案 7 :(得分:-2)

@echo off
xcopy ...

用适当的xcopy参数替换...以复制要复制的内容。