魅惑のbqコマンド
GCP環境をCLIで操る魅惑のコマンド
GCPをCLIで操る魅惑のshellやBQコマンドは、GUIでいわれる痒いところまで手が届かないという言葉が嘘のように届かせることが可能となります。
使用できる詳細を記したhelpコード
$ bq --help
使用コきるコードはこちらを参照すれば取得可能。
GCSのCSVデータやJSONデータを他プロジェクトに移送させたりローカルにデータをダウンロードする方法ことも可能である。
そもそもGCSにアクセスする方法とは
接頭辞に「gsutil」をつけてアクセスする
$ gsutil help
よく使う目的別のbqコマンドとshell
◼︎sqlファイルを実行する方法
$ bq query --use_legacy_sql=false -- format json < ./同ディレクトリ内のSQLファイル.sql | jq -r
sqlファイルをjsonファイルとして出力させてjqコマンドで整形して出力させている内容。
なお途中で表示が切れている場合は「--use_legacy_sql=false」の前に「--n 2000」と入力させると2000行までは表示される。
表示範囲を拡張させてやる必要あり。
◼︎ディレクトリを削除したい
$ rm -r -d ディレクトリ名
ディレクトリ内にファイルを作成した場合に全て削除してからディレクトリを削除しなくて良い方法が、こちらのコマンド
◼︎特定ファイル直下まで表示させる方法
$ ls -ltR ./指定ファイル
指定ファイル直下のファイル内容などを一括表示させることが可能
◼︎JSONファイルをCSV形式で表示させたい
$ cat ./jsonファイル | jq -r ',[] | [.column_name, .description] | @csv'
ディレクトリを指定したJSONファイルwp表示する項目を設定してcsv形式で表示。jqコマンドで読みやすいように整形も実施。
◼︎テーブルをJSONファイルの内容をもとにアップデートする方法
$ bq update データセット.テーブル名 ./変更したい内容を記載したJSONファイル
JSONファイルに変更したい内容を記載した場合、JSONファイルをもとにテーブルに直接変更することが可能となる。