Переименование родительского каталога с powershell

У меня есть скрипт powershell, который должен переименовать свой родительский каталог:

$currDir = pwd
Rename-Item $currDir "NewName"

Когда я запускаю это, я получаю сообщение об ошибке "Rename-Item: процесс не может получить доступ к файлу, потому что он используется другим процессом". Я также пытался (чтобы убедиться, что это не так, потому что текущий каталог установлен в целевой каталог):

$currDir = pwd
cd ..
Rename-Item $currDir "NewName"
cd "NewName"

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

1 ответ

Вы не сможете переименовать родительский каталог, если скрипт выполняется из него, Windows блокирует этот каталог, потому что в нем открыт дочерний элемент. По какой причине вы не можете переместить сценарий?

Другие вопросы по тегам