web-dev-qa-db-ja.com

AWSCLI-JSONオブジェクトをデコードできませんでした

CLI for AWSを使用してクラスターを作成し、jsonファイルのパラメーターを使用しています。使用しているCLIコマンド文字列は次のとおりです。

aws emr create-cluster --name "Big Matrix Re Run 1" --AMI-version 3.1.0 --steps file://Segmentgroup1.json --release-label --instance-groups InstanceGroupType=MASTER,InstanceCount=1,InstanceType=m3.xlarge InstanceGroupType=CORE,InstanceCount=2,InstanceType=m3.xlarge --auto-terminate

私のjsonファイル(Segmentgroup1.json)は、ImがAWSコマンド文字列を実行しているのと同じフォルダーにありますが、次のエラーが発生し続けます。

No JSON object could be decoded

私が見つけたものに基づいて、jsonファイルが見つかりません。何か案は?

12
DataGuy

Macでも同じ問題が発生しましたが、原因はjsonファイルの内容ではなくjsonファイルのパスであることがわかりました。それを正しくするために:

  • パスのプレフィックスとしてfile://プロトコルを追加する必要があります
  • jSONファイルへの絶対パスをパラメーターとして使用します

次のようなものを試してください。

aws ecs register-task-definition --cli-input-json file://<absolute_path_to_json>/your_json.json

ファイルパスをハードコーディングしたくない場合は、pwdのようなコマンドを使用してこれを行うことができます。

aws ecs register-task-definition --cli-input-json file://`pwd`/your_json.json

27
nybon

これは、ファイルパスの構文が少し異なるWindowsで機能するコマンドの例です。

aws cloudwatch put-metric-data --namespace "EC2 Memory Usage" --metric-data file://C:\Users\Joe\mycode\metric.json
0
Franke