簡體   English   中英

PYTHON 腳本:將 AZ cli 輸出重定向到文件

[英]PYTHON script: redirect AZ cli outputs to a file

這是當前的 python 腳本:

from azure.cli.core import get_default_cli
import argparse
import json

######credentials:
AZCLIusr = XXXXXXX
AZCLIpwd = XXXXXXXXX
AZCLItenant = XXXXXX
######resource group arg:
parser = argparse.ArgumentParser()
parser.add_argument("--rg", help="specify Azure Resource Group")
args = parser.parse_args()
resourceGroupAZ = str(args.rg)
#######

get_default_cli().invoke(['login', '--service-principal', '--username', str(AZCLIusr), '-p', str(AZCLIpwd), '--tenant', str(AZCLItenant)])

###### AZ CLI EXECUTION QUERY


get_default_cli().invoke(['vm', 'list','--resource-group', resourceGroupAZ, '--query', '[].{Name:name, TAGS:tags, RESOURCEGROUP:resourceGroup}'])

這是“虛擬機列表”的當前 output:

[
  {
    "Name": "VM-NAME",
    "RESOURCEGROUP": "RESOURCEGROUP-NAME",
    "TAGS": {
      "TAGNAME": "TAGVALUE",
      "TAGNAME": "TAGVALUE",
      "TAGNAME": "TAGVALUE"
    }
  }
]

如果我使用 output 執行,如下所示:

python3 pythonScript.py >> file.txt

包括所有輸出,包括 JSON 等中的日志......並且只需要 output“vm list”。

太感謝了。

我們已嘗試使用以下代碼來實現您的要求。(例如,將 VM 列表存儲在file.txt而不是所有日志中)。

代碼:-

from azure.cli.core import get_default_cli

import argparse

import json



######credentials:

AZCLIusr = 'fxxxxxxxxxxx'

AZCLIpwd = 'xxxxxxxx'

AZCLItenant = 'xxxxxx'

######resource group arg:

parser = argparse.ArgumentParser()

#parser.add_argument("--rg", help="specify Azure Resource Group")

#args = parser.parse_args()

resourceGroupAZ = 'xxxx'

#str(args.rg)

#######



get_default_cli().invoke(['login', '--service-principal', '--username', str(AZCLIusr), '-p', str(AZCLIpwd), '--tenant', str(AZCLItenant) , '--output' , 'none']) ## output is none so that it silently continues to the next command



###### AZ CLI EXECUTION QUERY

get_default_cli().invoke(['vm', 'list','--resource-group', resourceGroupAZ, '--query', '[].{Name:name, TAGS:tags, RESOURCEGROUP:resourceGroup}'])

OUTPUT:- 在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM