Aller au contenu principal
Page traduite

Cette page a été traduite de l'anglais avec l'aide de l'IA. En cas de divergence, la version anglaise fait référence.

exec

Commande servant à exécuter une requête StackQL, soit sous forme d'instruction unique, soit sous forme de lot d'instructions issu d'un script StackQL (fichier IQL).


Syntaxe​

stackql exec [query] [flags]


Arguments​

ArgumentDescriptionExemple
queryRequête StackQL à exécuter
ou commande à exécuter
"SELECT * FROM google.compute.instances
WHERE project = 'myproject' AND zone = 'us-east1-a'"
Notez que la requête doit être placée entre guillemets simples ou doubles

Options​

OptionDescription
-o
--output
Mode de sortie, les valeurs valides sont : table (valeur par défaut), json, jsonl (JSON délimité par des sauts de ligne, ndjson est accepté comme alias), csv, text et otel (enregistrements de journal OpenTelemetry, consultez Modes de sortie), exemple : --output jsonl
-i
--infile
Exécute la requête depuis le fichier spécifié si nécessaire ; si cette option est spécifiée, toute requête fournie en argument est ignorée, exemple : --infile myquery.iql
-q
--iqldata
Données source de la commande, issues d'un fichier json ou jsonnet, exemple : --iqldata vars.jsonnet
--dryrunOption d'exécution à blanc ; seul le préprocesseur s'exécute et la sortie est renvoyée
--varVariables externes (qui peuvent être des variables d'environnement ou des secrets) lues par les fichiers jsonnet spécifiés avec l'option --iqldata, exemple --var region=${AWS_REGION}
-f
--outfile
Fichier dans lequel écrire les résultats si nécessaire (par défaut, les résultats sont uniquement affichés dans la console), exemple --outfile myoutput.csv
-H
--help
Affiche les informations d'aide
-v
--verbose
Exécute les requêtes en mode détaillé, avec une sortie supplémentaire envoyée vers stdout ; si l'option -f est sélectionnée, ces informations de journalisation supplémentaires sont écrites dans le fichier de sortie avec les résultats de la requête


consultez Options globales pour des options supplémentaires


Exemples​

Afficher les résultats de la requête dans la console au format tableau :

stackql exec "SHOW services IN google"

Afficher les résultats de la requête dans la console au format json :

stackql exec "SHOW services IN google" -o json

Écrire les résultats de la requête dans un fichier au format json :

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

Exécuter la requête depuis un fichier d'entrée (fichier IQL) et écrire les résultats dans un fichier au format json :

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

Code de sortie​

exec se termine avec le code 0 une fois l'entrée traitée ; les erreurs des instructions individuelles sont écrites dans la console, les scripts doivent donc inspecter la sortie. À partir de v1.0, la commande se termine avec le code 1 lorsqu'une instruction de configuration SET ou UNSET échoue, lorsque la gestion des accès est activée et qu'une instruction est refusée, ou lorsqu'une exécution IaC en préversion signale une ressource en échec.