Newby问题:如何自动将文件复制到远程计算机?

首先,我非常尊重程序员和IT专业人员。 我是一个新的/想要的。 我正在寻找帮助开发一个小程序/脚本,可以帮助我完成我在下面详细介绍的任务。 我不会把这作为作业提交。 这是与工作有关的,但我不是要求你做我的工作。 我以此为契机,通过完成我需要完成的任务来了解更多关于编程的内容。 您可能提供的任何代码都将有所帮助,但我对核心概念,步骤以及您如何最好地处理此任务的意见非常感兴趣(哪些工具,语言等)

这是我有:XP机器(本地和远程)

  • 一些batch file的基本知识
  • Visual Basic 2008 Express的一点点经验
  • C ++经验的TINY位(并具有代码块编译器)
  • XP相当公平的工作知识

这是我想要做的:

每个周一到周五的午夜,我想要一个非现场机器(#1),我将build立和可以访问

  1. 从hibernate状态唤醒
  2. 通过ftp连接或互联网将位于办公室(即将开启)的选定机器(#2)的所有内容(\ Server \ remoteBackup)复制(\ xcopy \)到离线机器(C:\ remoteBackup)
  3. 把一个“successfulCopy.txt”文件放在另一台选定的机器上(#3)(\ machine3 \ log)。 每个“successfulCopy.txt”文件应该检查​​是否存在“successfulCopy.txt”,如果是的话,重新命名为“successfulCopy(2).txt”或其他。
  4. 回到hibernate状态(完成时或定时器)

这基本上是一个远程备份系统。 你怎么看? 你提供的任何想法将是最有帮助的,如果你的名字给我的方式,我可以谷歌您的答案,以了解更多,如果我有进一步的问题。 我感谢您可以提供的任何帮助。 我想这样做,因为我想这样做,没有其他原因。

不能帮助你的hibernate方面,但复制文件,看看scp和基于密钥的login。

为了保留成功的复制文件的旧版本,你应该能够使用ssh在远程端运行命令来做到这一点。

你可能也想看看cygwin, 它会给你sshbash ,这可能会更容易做你想做的事情。

我写了一个大post,我发誓我贴了,但是…嗯。

你会想要做一些归档:它会让你的生活变得更容易。 我推荐7zip; 这是一个免费的压缩工具,具有强大的命令行界面。 非常容易编写1-line 7zip命令来归档和压缩整个目录树,并且它还支持归档的“更新”选项,所以不必每次包装每个文件,只需更新已更改的文件即可。应该节省很多时间。

一旦你有你的档案,你会想要发送到某个地方。 我推荐WinSCP; 这是一个免费的FTP / SFTP客户端, 具有良好的命令行/脚本支持。 脚本界面非常强大。

把这两个放在一起,你可以写一个简单的DOSbatch file来运行必要的命令。 快速,简单,有效。

尽量避免重新发明车轮的诱惑。 这是一个很好的教训。 有些人已经花了很多时间把你可以使用的东西拼凑起来。

这不完全是你要求的,但我只是使用可用的许多文件复制程序之一。 我自己使用第二个副本。

还有其他更好的方法,但是这里有一些简单的想法,需要很less的知识或经验:

  1. 您通常可以在BIOS中configuration电源设置以在给定时间唤醒机器,通常标记为“警报”设置
  2. 而不是复制或xcopy看看Robocopy。 它更加灵活和非常强大(因此名称中的“机器人”部分),并可以恢复中断的失败
  3. Robocopy可以创build一个日志文件,但是你必须检查它是否有错误信息(Perl是理想的)
  4. 看看shutdown.exe
  1. 唤醒现场机器 – 安排该机器上的任务(任何任务)将其唤醒。 更多 – https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-6073491.html

  2. FTP脚本需要在Source(mput)/ Destination(mget)机器上创build,并使用计划任务调用。 你可以在网上findFTP脚本的样本。 事实上,你可以安排一个FTP GUI客户端来做到这一点,通过保存作业。

  3. 可以使用上面的脚本/ ftp gui客户端来完成

  4. 您可以安排“shutdown.exe -h”或“psshutdown.exe -h”来执行此操作。

将所有上述内容都包含在一个batch file中,这个文件是通过一个Scheduled Task调用的,方便起见。

心连心的

你也可以调查你的任务的rsync。 通常用于目录树的远程备份。