PowerShell: как удалить папку с именем, начинающимся с точки (например, «.svn») - PullRequest
2 голосов
/ 24 февраля 2011

Попробовал это:

Remove-Item "C:\foo\.svn"

но это ошибка, с которой я столкнулся

Remove-Item : Cannot find path 'C:\foo\.svn' because it does no
t exist.
At line:1 char:12
+ Remove-Item <<<<  "C:\foo\.svn"
    + CategoryInfo          : ObjectNotFound: (C:\foo\.svn:String) [Remove-Item], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.RemoveItemCommand

Ответы [ 6 ]

7 голосов
/ 24 февраля 2011

Хм, это работает для меня.Вы уверены, что каталог существует?Возможно, это скрыто.Если это так, попробуйте:

Remove-Item C:\foo\.svn -force -recurse
0 голосов
/ 24 февраля 2011

Убедитесь, что файл действительно существует и не имеет расширения, которое вы не предоставляете. Попробуйте перечислить содержимое каталога, если он не найден, и что он фактически содержит файлы, которые, по вашему мнению, существуют.

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

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

Remove-Item C:\foo\.svn

или это:

Remove-Item C:\foo\\.svn

работал для меня.

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

Это может быть связано с тем, что разрешения не являются правильными, нужно попробовать добавить флаг -Force:

Remove-Item "C:\foo\.svn" -Force
0 голосов
/ 24 февраля 2011
 rm .test 

работал для меня, здесь никаких проблем.

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

Я уверен, что у одного из гуру есть более чистый путь, но это должно работать:

gci | where {$_.name -match '.svn'} | remove-item
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...