使用BigQuery CLI的bq ls命令如何仅输出数据集的tableId列
BigQuery bq ls 命令仅输出 tableId 单列的调整方法
- 最优方案(无额外依赖,兼容性最高):使用bq命令内置的
--format参数直接指定输出tableId字段值即可
命令示例:
如果需要查询其他项目下的数据集,将数据集参数替换为bq ls --format='value(tableId)' 目标数据集名称项目ID:数据集名称格式即可。 - 若仅需要筛选普通表(排除视图、物化视图等其他资源类型),额外增加
--filter过滤参数:
命令示例:
如需筛选视图,将bq ls --format='value(tableId)' --filter="type:TABLE" 目标数据集名称type:TABLE替换为type:VIEW即可。 - 可选方案(需预装jq工具):将输出格式指定为json后通过jq提取字段
命令示例:bq ls --format=json 目标数据集名称 | jq -r '.[].tableId'
注意:不建议使用awk/sed直接切割默认文本输出的方案,bq默认输出的列顺序、表头行数可能随版本调整,且表名含特殊字符时会导致提取错误,优先使用上述内置参数方案。
内容的提问来源于stack exchange,提问作者Ali
相关产品推荐
相关产品推荐

