有没有一个批处理命令可以从A目录复制到B目录,但先备份B目录中要覆盖的文件到C目录?

问题描述 投票:0回答:1

基本上,

我需要使用补丁文件 zip 对程序应用手动补丁。

这个补丁有可能会破坏一些东西,但是如果没有这个补丁,程序目前可以运行。

必须有一种方法来备份将被补丁文件覆盖的内容。

我只是不知道这是什么,这是一个很难在网上找到答案的问题。

# Python - This is not real code, just the idea

Dir_A = os.walk(.\A)
Dir_B = os.walk(.\B)
Dir_C = .\C

ListOfBackup = [file for file in Dir_B if file in Dir_A]

Copy(ListOfBackup, Dir_C)

这是一项简单但又复杂的任务,我觉得编写一个 Python 脚本来完成它可能不是最好的主意。用实际的程序来做这件事也等于拿枪去打刀。

困境...

Robocopy 可能是最好的选择,但我无法使其发挥作用。

不知道有人用windows batch/powershell做过吗?

我希望这项任务可以通过 Windows 命令行或 Powershell 来完成,而不是使用第三方选项。

file backup patch
1个回答
0
投票

我需要使用补丁文件 zip 对程序应用手动补丁。

这个补丁有可能会破坏一些东西,但是如果没有这个补丁, 该程序目前有效。

必须有一种方法来备份补丁要覆盖的内容 文件。

当然,有很多方法。但在继续执行您似乎想到的操作之前(仅备份要修改的文件),您应该考虑备份应用程序的所有文件。这可能会更容易做到,而且如果事实证明需要的话,几乎肯定会更容易从中恢复。您可以使用 [Ctrl]+drag&drop 从文件浏览器以交互方式执行此操作,或者通过标准 xcopy

 命令从 shell(PowerShell 或 cmd.exe)执行此操作。
其他一些选择取决于您所说的“补丁”的含义。在 Windows 上这种情况不太可能发生,但如果您的补丁文件是 Unix 风格的补丁文件,打算通过 Unix 
patch

命令应用,那么该命令有一个用于制作备份文件的内置机制。其他修补系统可能也是如此。

或者使用 Unix 风格的补丁,补丁本身就是某种备份,因为它们可以反向应用,从补丁版本中恢复原始文件。

© www.soinside.com 2019 - 2024. All rights reserved.