Слишком длинный путь при удалении из powershell на удаленном компьютере

какой самый простой способ удалить файл на удаленном компьютере с помощью PowerShell, если имя длиннее 260 символов?
У меня есть следующий код, но я нажимаю предел 260 символов.

$s = New-PSSession -computername Server1    
Invoke-Command -session $s -scriptblock 
{Remove-Item "C:JenkinsworkspaceLong Path with spaces" -force
-recurse}    
Remove-PSSession $s
14
задан Dan
23.04.2023 19:56 Количество просмотров материала 3370
Распечатать страницу

2 ответа

это хорошо известное ограничение в PowerShell, к сожалению.

этот вопрос уже ответили в StackExchange, acepted ответ был использовать cmd и dir вместо того, чтобы собрать список папок.

этот ответ также предоставил следующую ссылку:http://asysadmin.tumblr.com/post/17654309496/powershell-path-length-limitation который в основном объясняет, почему dir может сделать трюк в таком случае, и показал следующий пример:

The Dir version is longer since you have to strip the extra information from the results.    

$folders = cmd /c dir C:\Users /s /-c /a:h /a:d
$folders = $folders -match “Directory”
$folders = $folders | %{$_.Replace(“ Directory of ”,“”)}
3
отвечен Merwyn 2023-04-25 03:44

вы пробовали использовать подстановочный знак?

Remove-Item "C:\Jenkins\workspace\Long Path with *"

, который удалит все файлы в этой папке, которые начинаются с "длинный путь с".

2
отвечен dangph 2023-04-25 06:01

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх