Использование new-item для создания папки иногда выдает ошибку в Powershell - PullRequest
0 голосов
/ 30 сентября 2019

У меня Windows Server Server с установленным Powershell 5.0. Я пытаюсь создать папку в общей сетевой папке (которая также находится на том же сервере, но я получаю доступ к общей папке с помощью \ server \ backup вместо D: \ backup) с помощью команды Powershell ниже.

Однако приведенный ниже код иногда выдает ошибки.

System.ArgumentException: Invalid Path: '\\server\backup\PSBackup\newFolder'.
   at Microsoft.SqlServer.Management.PowerShell.SqlPath..ctor(String path)
   at Microsoft.SqlServer.Management.PowerShell.SqlServerProvider.NewItem(String path, String type, Object newItem)
   at System.Management.Automation.SessionStateInternal.NewItemPrivate(CmdletProvider providerInstance, String path, String type, Object content, CmdletProviderContext context)

У меня есть скрипт powershell, который создает папки в заказе, тот же код создает первую папку, но выдает ошибку при создании второй папки.

Вы когда-нибудь сталкивались с такимпроблема при создании папки на сетевом ресурсе? Кстати, один и тот же скрипт powershell работает без проблем на моем компьютере разработчика (Windows 2012 R2) и серверах Windows 2008 R2.

$rootFolder = "\\server\backup\PSBackup"
$folderName = "newFolder"

$createdDirectory = New-Item -Path $rootFolder -ItemType "directory" -Name $folderName

1 Ответ

0 голосов
/ 01 октября 2019

Когда Путь параметр изменяется "Microsoft.PowerShell.Core \ FileSystem :: $ ($ rootFolder)" вместо $ rootFolder , код работает какожидается.

Должна быть проблема с передачей удаленной папки в качестве параметра.

$createdDirectory = New-Item -Path "Microsoft.PowerShell.Core\FileSystem::$($rootFolder)" -ItemType "directory" -Name $folderName
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...