Не удалось установить артефакт "Выполнить PowerShell" с помощью CommandNotFoundException

Я пытаюсь загрузить и запустить скрипт PowerShell (из хранилища больших двоичных объектов), используя артефакт Run Powershell на существующей виртуальной машине в лабораториях Azure DevTest.

Я получаю следующую ошибку и предполагаю, что делаю что-то глупое.

& : The term './script.ps1' is not recognized as the name of a cmdlet, 
function, script file, or operable program. Check the spelling of the name, or 
if a path was included, verify that the path is correct and try again.
At line:1 char:3
+ & ./script.ps1
+   ~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (./script.ps1:String) [], Comman 
   dNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Вот моя установка...

Изображение, показывающее настройку артефакта с совпадением URL-адреса и имени скрипта

Я также попробовал синтаксис массива JSON, который дал тот же результат, и недопустимый URL, который выдал ошибку 404, поэтому кажется, что он загружает мой скрипт, но потом не может его найти.

1 ответ

Ниже приведена информация, которую я написал некоторое время назад. Несколько предметов для заметки:

  • На данный момент структура папок не поддерживается. Поэтому скрипт должен находиться в корне контейнера
  • Убедитесь, что ваш объект публичный

Сначала вам понадобится файл в хранилище Azure. После загрузки в ваш контейнер щелкните файл, чтобы перейти к его свойствам, и скопируйте поле URL.

В качестве примера я создал следующий файл сценария Run.ps1 и загрузил его в хранилище в виде большого двоичного объекта:

param ( [string]$drive = "c:\" )
param ( [string]$folderName = "DefaultFolderName" )

New-Item -Path $drive -Name $folderName -ItemType "directory"

Теперь, добавляя артефакт "Запуск PowerShell" на виртуальную машину, мы предоставляем следующую информацию:

File URI (s): поле URL, скопированное с предыдущего шага. (например, https://myblob.blob.core.windows.net/mycontainer/Run.ps1)

Скрипт для запуска: имя скрипта PS1 (например, Run.ps1)

Аргументы скрипта: Аргументы, которые вы пишете в конце своей команды (например, -drive "d:\" -folderName "MyFolder")

Другие вопросы по тегам