### 1. 列出trino中所有的表
trino --server IP:8080 --catalog hive --user batch_dev --schema=SCHEMA --execute="show tables" >table_list
### 2. 剔除不必要的表,并分出表和视图
grep -Ev "_bak_|ods_|_bak2|_tmp_" table_list|grep -v "_view" |awk -F'"' '{print $2}' > table_list_fix
grep -Ev "_bak_|ods_|_bak2|my_page_view" table_list|grep -E "_view|_tmp_" |awk -F'"' '{print $2}' > view_list_fix
### 3. 生成show create语句文件
awk '{print "show create table "$1";"}' table_list_fix > show_create_table_sql
awk '{print "show create view "$1";"}' view_list_fix > show_create_view_sql
### 4. 根据show create文件,生成建表语句文件
trino --server IP:8080 --catalog hive --user batch_dev --schema=SCHEMA -f show_create_table_sql > create_table_sql
trino --server IP:8080 --catalog hive --user batch_dev --schema=SCHEMA -f show_create_view_sql > create_view_sql
### 5. 修复建表、视图语句文件
sed 's/"CREATE /CREATE /' create_table_sql|sed 's#)"#)\n;\n#'|sed 's#hive.SCHEMA.#if not exists #'|sed 's#""#"#g' > create_table_sql_fix
sed 's/"CREATE /CREATE /' create_view_sql|sed 's#)"#)\n;\n#'|sed 's#hive.SCHEMA.#if not exists #'|sed 's#""#"#g' > create_view_sql_fix
标签:presto,--,备份,show,sql,table,view,create,trino
From: https://www.cnblogs.com/chenzechao/p/17125437.html