PowerShellでaws cliを使用し、作成日を絞ったS3のバケットリストを取得したい

0

Windows PowerShellでaws cliを使用し、作成日でフィルタリングしたS3のバケットリストを取得したいです。
例)作成日2023/8/4以前に作成したバケットの一覧を取得
ただ、こちらバッチ処理の一部で取得したいと考えており、作成日はコマンドで取得後、変数に格納することを考えております。 具体的には以下のコマンドで一覧取得考えているのですが、どうしてもうまくいきません。

$date = ((get-date).AddDays(-1)).ToString("yyyy-MM-dd")
aws s3api list-buckets --query 'Buckets[?CreationDate <= `${date}`]' --output json

コマンドライン2行目の「${date}」部を「2023-08-04」と数字ベタ打ちするとリスト取得はできるので、変数が上手く反映されていないんだろうと検討はつくのですが、具体的にどのように日付取得すべきなのでしょうか。
aws cliというより、jmespathの記述方式について…のような気もしてしまうのですが、もしご存じの方いらっしゃったらご教示いただけますと幸いです。

已提问 9 个月前642 查看次数
1 回答
1
已接受的回答

以下のようにすると動くと思います。
バッククォートだとエスケープとかになってしまっているのではないかと思います。

aws s3api list-buckets --query "Buckets[?CreationDate <= '$date']" --output json
profile picture
专家
已回答 9 个月前
  • ご回答ありがとうございます。 ご教示いただいた表記で試したところ、無事動きました。 バッククォートだと確かに「$はパラメータとして認識しません……」といった感じのエラーメッセージ出ていたので、エスケープされてしまっていたんだと思います。 ご教示いただき、ありがとうございます。助かりました。

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则