我有一个从批处理文件运行的脚本,它将整个目录从USB记忆棒复制到C盘。但在此之前,它会将C驱动器上的当前Config
目录重命名为Config
加上时间戳。出于某种原因,在一些非常罕见的情况下,这个过程存在问题。我想我先看看脚本本身,然后再看看USB或Windows是否有问题等。我现在没有任何日志或任何其他信息,我希望我这样做。
这是脚本。任何人都可以看到可能导致问题的事情吗?
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
if (Test-Path "D:\Upgrade\CONFIG") { $src_dir = "D:\Upgrade\CONFIG" }
elseif (Test-Path "F:\Upgrade\CONFIG") { $src_dir = "F:\Upgrade\CONFIG" }
elseif (Test-Path "G:\Upgrade\CONFIG") { $src_dir = "G:\Upgrade\CONFIG" }
else { $src_dir = "E:\Upgrade\CONFIG" }
$dest_dir = "C:\TEST\CONFIG"
$date_str = Get-Date -UFormat %d%b%Y
$time_str = Get-Date -UFormat %H%M%S
$archive_dir = "$dest_dir" + "." + "$date_str" + "." + "$time_str"
if (Test-Path $src_dir) { Ren "$dest_dir" "$archive_dir" ; Copy-Item "$src_dir" "$dest_dir" -recurse }
else { [System.Windows.Forms.MessageBox]::Show("$src_dir found, could not complete !!!") }