要するに、bq show -schema の結果から、select 文を作りたいということ。
bq show -schema の結果が foo-table.json とする。
zsh で以下を実行
target=foo-table.json; \
jq -r '.[].name' $target \
| xargs \
| gawk '{
table = ENVIRON["target"]
sub(/\.[^.]+$/, "", table)
gsub(/ /, ", \n ")
print "SELECT \n " $0 " \nFROM\n " table "\n;"
}'
実行結果イメージ
SELECT
col_a,
col_b,
col_c
FROM
foo-table
;