Перемещение папок в каталоге - PullRequest
0 голосов
/ 16 марта 2019

Я пытаюсь создать скрипт powershell, который позволяет мне перемещать все папки из каталога с фильтром, чтобы что-то исключить.Но проблема в том, что при попытке перемещения папок содержимое внутри них перемещается, и вместо перемещения всей папки удаляется папка.

The Script

[string] $currentDir = $PSScriptRoot
[string] $newDir = $currentDir + '\moveFolder'

# I have tried both of these but the result is still the same
Get-ChildItem -Path $currentDir -Directory | Where-Object { $_.FullName -notmatch 'moveFolder'} | Move-Item -Destination ($newDir + '\build')
Move-Item -Path ($currentDir + '\*') -Destination ($newDir + '\build') -Exclude moveFolder

Пример того, чтопроисходит

До

- Main Folder
    - Subfolder1
       - abc
       - abcd.txt
    - moveFolder

После

- Main Folder
   - moveFolder
      - abc
      - abcd.txt

Как вы видите, содержимое папки было перемещено вместо перемещения всей папки.Это работает, когда я пытаюсь сделать это в окне powershell, но при запуске из файла сценария это происходит.

1 Ответ

0 голосов
/ 17 марта 2019

Разобрался.Я забыл создать папку "build".Я создал «MoveFolder», но полностью забыл об этом.

Конечный результат выглядит следующим образом

[string] $currentDir = $PSScriptRoot
[string] $newDir = $currentDir + '\moveFolder'
[string] $destination = $newDir + '\build\'
New-Item -ItemType Directory -Force -Path $destination
Get-ChildItem -Path $currentDir -Directory -Exclude moveFolder | Move-Item -Destination $destination
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...