大量のサブディレクトリとファイルを含むディレクトリがあります。SubFolder1 以外のすべてのファイルを削除する必要があります。
Initial State: Desired Output:
\ \
|_Folder1 |_Folder1
| |_File1.txt |_SubFolder1
| |_File2.xml |_File3.csv
| |_SubFolder1 |_File4.exe
| | |_File3.csv
| | |_File4.exe
| |_Subfolder2
|_Folder2
| |_ <more files here>
|_Folder3 (etc)
だからここに私が試したことがあります:
Remove-Item * -exclude Folder1\Subfolder1\*
そして、次のような警告が表示されます。
Confirm
The item at C:\foo\Folder1 has children and the -recurse parameter was not specified.
If you continue, all children will be removed with the item. Are you sure you want to continue?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help
(default is "Y"):
を指定する-recurse
と、すべてのファイルが削除され、フィルターが無視されるようです。
何が起こっているのか、これを行う正しい方法は何ですか?
編集: 上記のフォルダー構造の例を含む zip ファイルを含めました。ソリューションをテストしたい場合は、そこで試してみてください。目的の出力を含む 2 番目の zip ファイルも含めたので、機能しているかどうかを確認できます。