다음을 통해 공유


az vm run-command

Virtual Machine에서 실행 명령을 관리합니다.

자세한 내용은 https://docs.microsoft.com/azure/virtual-machines/windows/run-command 또는 https://docs.microsoft.com/azure/virtual-machines/linux/run-command를 참조하세요.

명령

Name Description 형식 상태
az vm run-command create

실행 명령을 만드는 작업입니다.

핵심 GA
az vm run-command delete

실행 명령을 삭제하는 작업입니다.

핵심 GA
az vm run-command invoke

vm에서 특정 실행 명령을 실행합니다.

핵심 GA
az vm run-command list

VM 또는 위치에서 실행 명령을 나열합니다.

핵심 GA
az vm run-command show

특정 실행 명령을 가져옵니다.

핵심 GA
az vm run-command update

실행 명령을 업데이트하는 작업입니다.

핵심 GA
az vm run-command wait

res virtual-machine-run-command 조건이 충족될 때까지 CLI를 대기 상태로 유지합니다.

핵심 GA

az vm run-command create

실행 명령을 만드는 작업입니다.

az vm run-command create --name
                         --resource-group
                         --vm-name
                         [--async-execution {false, true}]
                         [--command-id]
                         [--error-blob-uri]
                         [--location]
                         [--no-wait]
                         [--output-blob-uri]
                         [--parameters]
                         [--protected-parameters]
                         [--run-as-password]
                         [--run-as-user]
                         [--script]
                         [--script-uri]
                         [--tags]
                         [--timeout-in-seconds]

예제

실행 명령을 만듭니다.

az vm run-command create --resource-group "myResourceGroup" --location "West US" --async-execution false --parameters arg1=param1 arg2=value1 --run-as-password "<runAsPassword>" --run-as-user "user1" --script "Write-Host Hello World!" --timeout-in-seconds 3600 --run-command-name "myRunCommand" --vm-name "myVM"

스크립트 출력 스트림을 AZURE STORAGE Blob(SAS URI)에 업로드하여 실행 명령을 만듭니다.

az vm run-command create --resource-group "myResourceGroup" --location "West US" --script "Write-Host Hello World!" --run-command-name "myRunCommand" --vm-name "myVM" --output-blob-uri "https://mystorageaccount.blob.core.windows.net/mycontainer/RuncommandOutput.txt?sp=racw&st=2022-10-17T19:02:15Z&se=2022-10-18T03:02:15Z&spr=https&sv=2021-06-08&sr=b&sig=3BxtEasfdasdfasdfdYki9yvYsqc60V0%3D"

필수 매개 변수

--name --run-command-name

가상 머신 실행 명령의 이름입니다.

--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--vm-name

가상 컴퓨터의 이름입니다.

선택적 매개 변수

--async-execution

선택 사항. true로 설정하면 스크립트가 시작되는 즉시 프로비전이 완료되고 스크립트가 완료될 때까지 기다리지 않습니다.

허용되는 값: false, true
--command-id

미리 정의된 기본 제공 스크립트의 commandId를 지정합니다.

--error-blob-uri

스크립트 오류 스트림이 업로드될 Azure Storage Blob을 지정합니다.

--location -l

위치. 값: az account list-locations. az configure --defaults location=<location>을 사용하여 기본 위치를 구성할 수 있습니다.

--no-wait

장기 실행 작업이 완료되기를 기다리지 마세요.

Default value: False
--output-blob-uri

스크립트 출력 스트림이 업로드될 Azure STORAGE Blob(SAS URI)을 지정합니다.

--parameters

스크립트에서 사용하는 매개 변수입니다.

사용법: --parameters arg1=XX arg2=XX.

--protected-parameters

스크립트에서 사용하는 매개 변수입니다.

사용: --protected-parameters credentials=somefoo secret=somebar.

--run-as-password

사용자로 실행 매개 변수를 사용하는 데 필요한 경우 암호입니다. 암호화되고 기록되지 않습니다.

--run-as-user

기본적으로 스크립트 프로세스는 시스템/루트 사용자에서 실행됩니다. 프로세스를 호스트할 사용자 지정 사용자를 지정합니다.

--script

VM에서 실행할 스크립트 콘텐츠를 지정합니다.

--script-uri

스크립트 다운로드 위치를 지정합니다.

--tags

공백으로 구분된 태그: key[=value] [key[=value] ...]. ""를 사용하여 기존 태그를 지웁니다.

--timeout-in-seconds

실행 명령을 실행할 시간 제한(초)입니다.

전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.

az vm run-command delete

실행 명령을 삭제하는 작업입니다.

az vm run-command delete --name
                         [--ids]
                         [--no-wait]
                         [--resource-group]
                         [--subscription]
                         [--vm-name]
                         [--yes]

예제

실행 명령을 삭제합니다.

az vm run-command delete --resource-group "myResourceGroup" --run-command-name "myRunCommand" --vm-name "myVM"

필수 매개 변수

--name --run-command-name

가상 머신 실행 명령의 이름입니다.

선택적 매개 변수

--ids

하나 이상의 리소스 ID(공백으로 구분)입니다. '리소스 ID' 인수의 모든 정보를 포함하는 전체 리소스 ID여야 합니다. --ids 또는 다른 '리소스 ID' 인수를 제공해야 합니다.

--no-wait

장기 실행 작업이 완료되기를 기다리지 마세요.

Default value: False
--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--vm-name

가상 컴퓨터의 이름입니다.

--yes -y

확인 메시지를 표시하지 않습니다.

Default value: False
전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.

az vm run-command invoke

vm에서 특정 실행 명령을 실행합니다.

az vm run-command show 는 각 run-command에 대한 유용한 정보를 반환합니다. 를 통해 실행 명령 ID를 검색합니다 az vmss run-command list.

az vm run-command invoke --command-id
                         [--ids]
                         [--name]
                         [--no-wait]
                         [--parameters]
                         [--resource-group]
                         [--scripts]
                         [--subscription]

예제

Linux VM에 nginx를 설치합니다.

az vm run-command invoke -g MyResourceGroup -n MyVm --command-id RunShellScript --scripts "sudo apt-get update && sudo apt-get install -y nginx"

매개 변수를 사용하여 Linux VM에서 셸 명령을 실행합니다.

az vm run-command invoke -g MyResourceGroup -n MyVm --command-id RunShellScript --scripts 'echo $1 $2' --parameters hello world

매개 변수를 사용하여 Windows VM에서 PowerShell 스크립트를 실행합니다. 인라인으로 제공된 스크립트입니다. CMD.exe에서 작은따옴표를 주의하세요.

az vm run-command invoke  --command-id RunPowerShellScript --name win-vm -g my-resource-group  \
    --scripts 'param([string]$arg1,[string]$arg2)' \
    'Write-Host This is a sample script with parameters $arg1 and $arg2' \
    --parameters 'arg1=somefoo' 'arg2=somebar'

매개 변수를 사용하여 Windows VM에서 PowerShell 스크립트를 실행합니다. 파일에서 제공하는 스크립트입니다.

# script.ps1
#   param(
#       [string]$arg1,
#       [string]$arg2
#   )
#   Write-Host This is a sample script with parameters $arg1 and $arg2

az vm run-command invoke  --command-id RunPowerShellScript --name win-vm -g my-resource-group \
    --scripts @script.ps1 --parameters "arg1=somefoo" "arg2=somebar"

필수 매개 변수

--command-id

명령 ID입니다.

다음의 값: az vm run-command list

선택적 매개 변수

--ids

하나 이상의 리소스 ID(공백으로 구분)입니다. '리소스 ID' 인수의 모든 정보를 포함하는 전체 리소스 ID여야 합니다. --ids 또는 다른 '리소스 ID' 인수를 제공해야 합니다.

--name -n

Virtual Machine의 이름입니다. 를 사용하여 az configure --defaults vm=<name>기본값을 구성할 수 있습니다.

--no-wait

장기 실행 작업이 완료되기를 기다리지 마세요.

Default value: False
--parameters

'[name=]value' 형식의 공백으로 구분된 매개 변수입니다.

--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--scripts

공백으로 구분된 스크립트 줄입니다. @{file}을(를) 사용하여 파일에서 스크립트를 로드합니다.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.

az vm run-command list

VM 또는 위치에서 실행 명령을 나열합니다.

"--resource-group" 및 "--vm-name"을 지정하여 가상 머신의 모든 실행 명령을 가져올 수 있습니다. 또는 "--location"을 지정하여 한 위치에서 구독에 대해 사용 가능한 모든 실행 명령을 나열할 수 있습니다.

az vm run-command list [--expand]
                       [--location]
                       [--resource-group]
                       [--vm-name]

예제

가상 머신에서 실행 명령을 나열합니다.

az vm run-command list --resource-group "myResourceGroup" --vm-name "myVM"

한 위치에서 구독에 대해 사용 가능한 모든 실행 명령을 나열합니다.

az vm run-command list --location "SoutheastAsia"

선택적 매개 변수

--expand

작업에 적용할 확장 식입니다.

--location -l

위치. 값: az account list-locations. az configure --defaults location=<location>을 사용하여 기본 위치를 구성할 수 있습니다.

--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--vm-name

가상 컴퓨터의 이름입니다.

전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.

az vm run-command show

특정 실행 명령을 가져옵니다.

"--resource-group", "--run-command-name" 및 "--vm-name"을 지정하여 가상 머신에서 실행 명령을 가져올 수 있습니다. 또는 "--command-id" 및 "--location"을 지정하여 한 위치에서 구독에 대한 실행 명령을 가져올 수 있습니다.

az vm run-command show [--command-id]
                       [--ids]
                       [--instance-view]
                       [--location]
                       [--name]
                       [--resource-group]
                       [--subscription]
                       [--vm-name]

예제

가상 머신에서 실행 명령을 가져옵니다.

az vm run-command show --resource-group "myResourceGroup" --run-command-name "myRunCommand" --vm-name "myVM"

한 위치에서 구독에 대한 특정 실행 명령을 가져옵니다.

az vm run-command show --command-id "RunPowerShellScript" --location "SoutheastAsia"

선택적 매개 변수

--command-id

명령 ID입니다.

--ids

하나 이상의 리소스 ID(공백으로 구분)입니다. '리소스 ID' 인수의 모든 정보를 포함하는 전체 리소스 ID여야 합니다. --ids 또는 다른 '리소스 ID' 인수를 제공해야 합니다.

--instance-view

실행 명령의 인스턴스 뷰입니다.

Default value: False
--location -l

위치. 값: az account list-locations. az configure --defaults location=<location>을 사용하여 기본 위치를 구성할 수 있습니다.

--name --run-command-name

가상 머신 실행 명령의 이름입니다.

--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--vm-name

가상 컴퓨터의 이름입니다.

전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.

az vm run-command update

실행 명령을 업데이트하는 작업입니다.

az vm run-command update --name
                         [--async-execution {false, true}]
                         [--command-id]
                         [--error-blob-uri]
                         [--ids]
                         [--location]
                         [--no-wait]
                         [--output-blob-uri]
                         [--parameters]
                         [--protected-parameters]
                         [--resource-group]
                         [--run-as-password]
                         [--run-as-user]
                         [--script]
                         [--script-uri]
                         [--subscription]
                         [--tags]
                         [--timeout-in-seconds]
                         [--vm-name]

예제

실행 명령을 업데이트합니다.

az vm run-command update --resource-group "myResourceGroup" --location "West US" --async-execution false --parameters arg1=param1 arg2=value1 --run-as-password "<runAsPassword>" --run-as-user "user1" --script "Write-Host Hello World!" --timeout-in-seconds 3600 --run-command-name "myRunCommand" --vm-name "myVM"

스크립트 출력 스트림을 AZURE STORAGE Blob(SAS URI)에 업로드하여 실행 명령을 업데이트합니다.

az vm run-command update --resource-group "myResourceGroup" --location "West US" --script "Write-Host Hello World!" --run-command-name "myRunCommand" --vm-name "myVM" --output-blob-uri "https://mystorageaccount.blob.core.windows.net/mycontainer/RuncommandOutput.txt?sp=racw&st=2022-10-17T19:02:15Z&se=2022-10-18T03:02:15Z&spr=https&sv=2021-06-08&sr=b&sig=3BxtEasfdasdfasdfdYki9yvYsqc60V0%3D"

필수 매개 변수

--name --run-command-name

가상 머신 실행 명령의 이름입니다.

선택적 매개 변수

--async-execution

선택 사항. true로 설정하면 스크립트가 시작되는 즉시 프로비전이 완료되고 스크립트가 완료될 때까지 기다리지 않습니다.

허용되는 값: false, true
--command-id

미리 정의된 기본 제공 스크립트의 commandId를 지정합니다.

--error-blob-uri

스크립트 오류 스트림이 업로드될 Azure Storage Blob을 지정합니다.

--ids

하나 이상의 리소스 ID(공백으로 구분)입니다. '리소스 ID' 인수의 모든 정보를 포함하는 전체 리소스 ID여야 합니다. --ids 또는 다른 '리소스 ID' 인수를 제공해야 합니다.

--location -l

위치. 값: az account list-locations. az configure --defaults location=<location>을 사용하여 기본 위치를 구성할 수 있습니다.

--no-wait

장기 실행 작업이 완료되기를 기다리지 마세요.

Default value: False
--output-blob-uri

스크립트 출력 스트림이 업로드될 Azure STORAGE Blob(SAS URI)을 지정합니다.

--parameters

스크립트에서 사용하는 매개 변수입니다.

사용법: --parameters arg1=XX arg2=XX.

--protected-parameters

스크립트에서 사용하는 매개 변수입니다.

사용: --protected-parameters credentials=somefoo secret=somebar.

--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--run-as-password

사용자로 실행 매개 변수를 사용하는 데 필요한 경우 암호입니다. 암호화되고 기록되지 않습니다.

--run-as-user

기본적으로 스크립트 프로세스는 시스템/루트 사용자에서 실행됩니다. 프로세스를 호스트할 사용자 지정 사용자를 지정합니다.

--script

VM에서 실행할 스크립트 콘텐츠를 지정합니다.

--script-uri

스크립트 다운로드 위치를 지정합니다.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--tags

공백으로 구분된 태그: key[=value] [key[=value] ...]. ""를 사용하여 기존 태그를 지웁니다.

--timeout-in-seconds

실행 명령을 실행할 시간 제한(초)입니다.

--vm-name

가상 컴퓨터의 이름입니다.

전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.

az vm run-command wait

res virtual-machine-run-command 조건이 충족될 때까지 CLI를 대기 상태로 유지합니다.

az vm run-command wait [--command-id]
                       [--created]
                       [--custom]
                       [--deleted]
                       [--exists]
                       [--ids]
                       [--instance-view]
                       [--interval]
                       [--location]
                       [--name]
                       [--resource-group]
                       [--subscription]
                       [--timeout]
                       [--updated]
                       [--vm-name]

선택적 매개 변수

--command-id

명령 ID입니다.

--created

'Succeeded'에서 'provisioningState'를 사용하여 생성될 때까지 기다립니다.

Default value: False
--custom

조건이 사용자 지정 JMESPath 쿼리를 충족할 때까지 기다립니다. 예: provisioningState!='InProgress', instanceView. 상태es[?code=='PowerState/running'].

--deleted

삭제될 때까지 기다립니다.

Default value: False
--exists

리소스가 존재할 때까지 기다립니다.

Default value: False
--ids

하나 이상의 리소스 ID(공백으로 구분)입니다. '리소스 ID' 인수의 모든 정보를 포함하는 전체 리소스 ID여야 합니다. --ids 또는 다른 '리소스 ID' 인수를 제공해야 합니다.

--instance-view

실행 명령의 인스턴스 뷰입니다.

Default value: False
--interval

폴링 간격(초)입니다.

Default value: 30
--location -l

위치. 값: az account list-locations. az configure --defaults location=<location>을 사용하여 기본 위치를 구성할 수 있습니다.

--name --run-command-name

가상 머신 실행 명령의 이름입니다.

--resource-group -g

리소스 그룹의 이름입니다. 를 사용하여 az configure --defaults group=<name>기본 그룹을 구성할 수 있습니다.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--timeout

최대 대기 시간(초)입니다.

Default value: 3600
--updated

'Succeeded'에서 provisioningState로 업데이트될 때까지 기다립니다.

Default value: False
--vm-name

가상 컴퓨터의 이름입니다.

전역 매개 변수
--debug

로깅의 자세한 정도를 늘려 모든 디버그 로그를 표시합니다.

--help -h

이 도움말 메시지를 표시하고 종료합니다.

--only-show-errors

경고를 표시하지 않고 오류만 표시합니다.

--output -o

출력 형식입니다.

허용되는 값: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath 쿼리 문자열입니다. 자세한 내용과 예제는 http://jmespath.org/를 참조하세요.

--subscription

구독의 이름 또는 ID입니다. 를 사용하여 az account set -s NAME_OR_ID기본 구독을 구성할 수 있습니다.

--verbose

로깅의 자세한 정도를 늘립니다. 전체 디버그 로그를 표시하려면 --debug를 사용합니다.