私たちのサイトの 1 つが最近、CryptoLocker の感染に見舞われました。幸いなことに、私たちはそれを早期に発見し、ファイル システム上の 200k ほどのファイルのうち、約 8k のファイルしか暗号化していませんでした。バックアップも良好だったので、ファイルを復元できます
暗号化されたファイルの約 8k のすべてのリストを、おおよそ次の形式で、改行ごとに 1 つのファイルにしています。
\\nas001\DATA\IQC\file.xls
\\nas001\DATA\IQC\file2.xls
\\nas001\DATA\IQC\folder1\file1.xls
\\nas001\DATA\IQC\folder3\file1.xls
適切なデータのスナップショットの ndmp コピーを作成したため、復元するバックアップは、特定の時点以降の同じフォルダー構造を持つ NAS 上の別のボリュームです。
\\nas001\IQC_restore\file.xls
\\nas001\IQC_restore\file2.xls
\\nas001\IQC_restore\folder1\file1.xls
\\nas001\IQC_restore\folder3\file1.xls
PowerShell (または実際には、バッチ スクリプトまたは robocopy) を使用して、暗号化されたファイルのリストを使用してファイルを解析し、それらのファイルのみをバックアップから元の場所にコピーして、暗号化されたファイルを上書きする簡単な方法はありますか? 別の解決策では、次のスクリプトを見つけました。
$a = Get-Content "C:\script\hname.txt"
foreach ($i in $a)
{$files= get-content "C:\script\src.txt"
foreach ($file in $files)
{Copy-Item $file -Destination \\$i\C$\temp -force}
}
これはほとんど私が必要とするものです - foreach $i in $a
$i が 1 つしかないため、ステートメントは冗長です。フォルダー構造を保持する方法でファイルをコピーするのではなく、にリストされているすべてのファイルを単一のフォルダーにコピーします。
これを行う最善の方法は何ですか?2つの別々のファイルを渡して、2行ずつリンクするように指示できますか?ファイルaの各行に対して、ファイルをファイルbのパスにコピーしますか? 1 セットのファイル (ファイルa )を渡し、文字列の置換を実行し、その場所にコピーする方が簡単ですか?
ありがとうございました!