メインコンテンツまでスキップ
翻訳ページ

このページは AI の支援を受けて英語から翻訳されています。内容が異なる場合は英語版が正となります。

exec

StackQL クエリを、単一の文として、または StackQL スクリプト(IQL ファイル)から文のバッチとして実行するためのコマンドです。


構文​

stackql exec [query] [flags]


引数​

引数説明例
query実行する StackQL クエリ
または実行するコマンド
"SELECT * FROM google.compute.instances
WHERE project = 'myproject' AND zone = 'us-east1-a'"
なお、クエリは単一引用符または二重引用符で囲む必要があります

フラグ​

フラグ説明
-o
--output
出力モード。有効な値は table(デフォルト)、json、jsonl(改行区切りの JSON。ndjson もエイリアスとして受け付けます)、csv、text、otel(OpenTelemetry のログレコード。出力モードを参照)です。例:--output jsonl
-i
--infile
必要に応じて、指定したファイルからクエリを実行します。指定した場合、引数として渡したクエリは無視されます。例:--infile myquery.iql
-q
--iqldata
json または jsonnet ファイルを使用した、コマンドのソースデータ。例:--iqldata vars.jsonnet
--dryrunドライランフラグ。プリプロセッサーだけが実行され、その出力が返されます
--var外部変数(環境変数またはシークレットを指定できます)。--iqldata フラグで指定した jsonnet ファイルによって読み込まれます。例:--var region=${AWS_REGION}
-f
--outfile
必要に応じて結果を出力するファイル(デフォルトでは、結果はコンソールにのみ出力されます)。例:--outfile myoutput.csv
-H
--help
ヘルプ情報を表示します
-v
--verbose
詳細モードでクエリを実行し、追加の出力を stdout に送ります。-f オプションを選択した場合、この追加のログ情報はクエリ結果とともに出力ファイルに書き込まれます


そのほかのオプションについては、グローバルフラグを参照してください。


例​

クエリ結果をテーブル形式でコンソールに出力します:

stackql exec "SHOW services IN google"

クエリ結果を JSON 形式でコンソールに出力します:

stackql exec "SHOW services IN google" -o json

クエリ結果を JSON 形式でファイルに出力します:

stackql exec "SHOW services IN google" -o json -f services.json

入力ファイル(IQL ファイル)からクエリを実行し、結果を JSON 形式でファイルに出力します:

stackql exec -i getservices.iql -o json -f services.json

終了ステータス​

exec は、入力を処理し終えるとステータス 0 で終了します。個々の文のエラーはコンソールに書き込まれるため、スクリプトでは出力を確認する必要があります。v1.0 以降では、SET または UNSET の設定文が失敗した場合、アクセス管理が有効で文が拒否された場合、またはプレビュー版の IaC 実行が失敗したリソースを報告した場合に、ステータス 1 で終了します。