Как разделить содержимое всей папки по списку расширений в powershell - PullRequest
0 голосов
/ 24 февраля 2019

У меня есть исходная папка, и я хотел бы иметь 2 папки с такой же структурой, как в исходной папке, но одна только с текстовыми файлами, а другая только с двоичными файлами.Дело в том, что по некоторым причинам фильтр включения не работает для меня, обе папки назначения существуют, и я не получаю никаких ошибок во время выполнения скрипта.Я использую PS 5.1 и запускаю этот скрипт от имени администратора.

$source = "C:\scr"
$destSourceCode = "C:\temp"
$destBinaries = "C:\tempBin"
$binariesExtentionList = @('*.jar','*.zip','*.so','*.class','*.dll')
#Copy SC
Copy-Item $source $destSourceCode -Recurse -Force -Exclude $binariesExtentionList
#Clean SC new location from binary files without extensions
gci $destSourceCode -File -Recurse | ?{!($_.Extension)} | remove-item
#Copy Binaries
Copy-Item $source $destBinaries -Recurse -Force -Include $binariesExtentionList

1 Ответ

0 голосов
/ 24 февраля 2019

Попробуйте это:

$source = "C:\scr\*"
$destSourceCode = "C:\temp\"
$destBinaries = "C:\tempBin\"
$binariesExtentionList = @('*.jar','*.zip','*.so','*.class','*.dll')
#Copy SC
Copy-Item -Path ($source + '.*') -Destination $destSourceCode -Recurse -Force -Exclude $binariesExtentionList
#Copy Binaries
Copy-Item -Path $source -Destination $destBinaries -Recurse -Force -Include $binariesExtentionList 
Copy-Item -Path $source -Destination $destBinaries -Recurse -Force -Filter '*.'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...