Я работаю над проектом, в котором используется сценарий PowerShell, который создает новый логин на удаленном SQL Server (SSMS), а затем проверяет, существует ли конкретная папка на сервере. Если папка еще не существует, сценарий создаст эту папку.
Проблема, с которой я сталкиваюсь, заключается в том, что я не могу проверить, существует ли папка, так как проверяемый мной путь - это UNC-путь в форме "\\ server \ Files \ Log". Я перепробовал много разных решений, которые нашел через пару часов поиска в сети, и все решения возвращают ЛОЖЬ, хотя я тестирую сервер и папку, которую, как я знаю, уже существует.
Я использую PowerGUI для написания своего скрипта, а моя система использует PowerShell v5. Что я пробовал до сих пор:
Test-Path $path
(где $path
было установлено на \\ сервер)
Test-Path "filesystem::\\Srv"
[System.IO.Directory]::Exists($path)
Я даже пытался [System.IO.Directory]::Exists('G:\')
, используя все
буквы, с которыми мне сопоставлены сетевые серверы, чтобы узнать, нужно ли мне сопоставить диски, чтобы они работали (все вернули FALSE)
Что мне здесь не хватает? Мы будем благодарны за любые мысли на эту тему, так как я уже некоторое время продолжаю в том же духе без какого-либо прогресса.
РЕДАКТИРОВАТЬ: Для тех, кто может наткнуться на это позже, пожалуйста, прочитайте комментарии, которые я нашел очень полезным. Моя главная проблема заключалась в том, что я запускал PowerShell от имени администратора, у которого нет тех же разрешений, что и у моей обычной учетной записи пользователя. Также обратите внимание, что Test-Path \\server
само по себе не работает, на папку также должна быть ссылка.