[英]AWS CLI Command modify / crop output?
我正在尋找使用 AWS CLI --query 標志裁剪單個字段的 output 的方法。
例如,我可以 pipe 到cut
命令來剪切每行的部分,但這需要手動計算名稱中的字符。
$ aws --region us-east-1 cloudwatch describe-alarms \
--query 'MetricAlarms[*].{AlarmName:AlarmName,MetricName:MetricName,Namespace:Namespace,Threshold:Threshold,Time:StateUpdatedTimestamp,State:StateValue}' \
--output table | cut -c1-50,97-147,197-500
任何人都知道這樣做的創造性方法,而不必知道(可變長度)字段長度?
或者
或者
aws <command> --output table
would?謝謝!
我能得到的最接近的是用管道分隔的 output ,您可以在其中使用下面的示例指定字符串字段的最大長度。如果您需要它,您將需要做更多的工作--output table
給您..列出下面是生成管道分隔 output 的示例,其中所有字符串字段都被截斷為長度 10
aws cloudwatch describe-alarms --query 'MetricAlarms[*].{"AlarmName":"AlarmName","MetricName":"MetricName","Namespace":"Namespace","Threshold":"Threshold","Time":"StateUpdated","State":"StateValue"}' --output json | jq '.[][] |= (if type == "string" then.[0:10] else.|tostring end) |.[] | join(" | ") '
下面列出的是它提供的 output
"TargetTrac | ConsumedWr | AWS/Dynamo | 210 | null | OK"
"TargetTrac | Provisione | AWS/Dynamo | 5 | null | OK"
"TargetTrac | Provisione | AWS/Dynamo | 5 | null | OK"
"TargetTrac | ConsumedWr | AWS/Dynamo | 210 | null | OK"
"TargetTrac | Provisione | AWS/Dynamo | 5 | null | OK"
"TargetTrac | Provisione | AWS/Dynamo | 5 | null | OK"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.