用于监视文件更改的脚本&如果检测到,请先备份原始文件。

时间:2017-03-29 13:08:18

标签: shell file powershell vbscript

根据标题,我正在寻找一种在保存/替换文件时备份文件(特定于SQL查询)的方法。

这是为了防止意外挽救而没有体面的后退。

我认为使用Powershell和.NET FileSystemWatcher的组合可能是一个很好的组合,而不是警报,我可以采取原始,并在另一个位置附加日期时间。

https://gallery.technet.microsoft.com/scriptcenter/Powershell-FileSystemWatche-dfd7084b

所以我的问题是,如何在Windows中中断该保存过程并在保存之前将文件复制出来?

我认为在该特定目录上启动保存时,如果不调用PS,则可能无法实现。

我可以访问PS,VBS和提升的cmd。

任何指针或进一步阅读的TIA。

1 个答案:

答案 0 :(得分:2)

由于FileSystemWatcher中没有OnBefore X 事件,因此在新版本覆盖之前无法备份/保存之前的版本。

  • 已更改:更改指定路径中的文件或目录时发生。
  • 已创建:在创建指定路径中的文件或目录时发生。
  • 已删除:删除指定路径中的文件或目录时发生。
  • Disposed:通过调用Dispose方法处理组件时发生。 (继承自Component。)
  • 错误:当FileSystemWatcher的实例无法继续监视更改或内部缓冲区溢出时发生。

  • 重命名:重命名指定路径中的文件或目录时发生。

执行此操作的唯一方法是执行所有文件的初始备份。然后在每次Changed事件后备份,带有时间戳前置/后缀。