3

Я использую VirtualBox с общей папкой, сопоставленной с диском E:. Я хочу запустить скрипт PowerShell с диска E:. Я установил:

Set-ExecutionPolicy Remotesigned

Я добавил file://vboxserver используя расширенный диалог в локальную интрасеть.

Когда я загружаю "E:\System_Data_SQLClient_test.ps1" в PowerShell ISE, я получаю:

Файл E:\System_Data_SQLClient_test.ps1 не может быть загружен. Файл E:\System_Data_SQLClient_test.ps1 не имеет цифровой подписи. Скрипт не будет выполняться в системе. Пожалуйста, смотрите "get-help about_signing" для более подробной информации.

В строке:0 символов:0

Когда я использую UNC-путь к общей папке, он работает:

\\VBOXSVR\WSV-BK-7en64-C\System_Data_SQLClient_test.ps1

Чего здесь не хватает, чтобы получить доступ к сценарию через букву диска?

2 ответа2

4

bernd_k Я нашел отличное решение, чтобы выполнить все сценарии, которые у вас есть в общей папке, создать символическую ссылку на каталог, вот и все !!

Предположим, что фактическим местоположением является c:\users\x. Запустите это в cmd от имени администратора:

 mklink /d NameforMyScriptFolder \\vboxsvr\share\RealScriptFolder

затем перейдите в эту папку в powershell как обычный пользователь и запустите все, что хотите:

  cd c:\users\x\NameforMy*
  executewhateverscript.ps1 #:D

pd: измените название вопроса, потому что он не отражает того, что вы действительно задаете.

1

Я наконец нашел рабочее решение

Add file://vboxsvr to Local Intranet Sites

Set-ExecutionPolicy RemoteSigned

mklink /d hostfiles \\VBOXSVR\WSV-BK-7en64-C

Спасибо voodoomsr за этот альтернативный способ избежать букв дисков.

Основная проблема - помнить правильный синтаксис при добавлении общего ресурса в локальную интрасеть.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .