1

私のスクリプトは、folder1 内のすべてのファイルを探し、このファイルが folder2 に存在するかどうかを確認します。存在する場合は、そのファイルを folder2 から削除し、そのファイルを Folder1 から folder3 に移動します。

$folder1 = "D:\folder1"
$folder2= "D:\folder2"
$folder3 = "D:\folder3"

$a = Get-ChildItem $folder1 | select -ExpandProperty basename 

$a | foreach {  
     Get-ChildItem -Path $folder2 -filter *$_* -Recurse 
}

for each ループの最後でパイプを使用すると、削除または移動のいずれかを実行できますが、両方を実行することはできません。この状況をどのように処理しますか?

4

3 に答える 3

0
Get-ChildItem -File -Include(Get-ChildItem -File $folder1) $folder2\* |
foreach { remove-item $_ ; move-item (join-path $folder1 $_.BaseName) -destination $folder3}
于 2013-09-25T12:00:12.070 に答える