Какой «лучший» способ отображения дисков в Powershell? - PullRequest
3 голосов
/ 14 июля 2010

Я пытаюсь оптимизировать сценарий входа, чтобы сделать его максимально надежным и быстрым для выполнения.

Сценарий регистрирует количество дисков, и я вижу, что я могу использовать либо:

(New-Object -ComObject WScript.Network).MapNetworkDrive("X:", \\myserver\myshare))

или

net use x: \\myserver\myshare

Для сопоставления дисков.

Какой "лучший" способ? «Традиционный» способ кажется более надежным, но он медленнее, чем новый.

Я также получаю некоторые странности, когда проверяю, существуют ли диски. Даже если они отображаются в Проводнике, иногда, когда я тестирую с:

if (test-path x:) { write "Drive mapped already" }

не дает никакого результата. Кажется, это происходит только в времени, но я не разработал шаблон.

Спасибо

Ben

1 Ответ

4 голосов
/ 15 июля 2010

Отображение диска с помощью «net use» не делает его автоматически видимым в powershell как PSDrive.К сожалению, это не одно и то же.Test-Path проверяет только PSPath, который является либо UNC-путем, либо PSDrive (или квалифицированным провайдером, как filesystem :: c :), указывающим на провайдера powershell.

Это одна из многих причин, почему powershell не является лучшей оболочкой для сценариев входа в систему.

-Oisin

...