Memoize

BasicWerk   EC Support   Technique   Facebook  

20140617094133_zsh_view_sqlite_tables

zsh_view_sqlite_tables

 

カレントディレクトリにある sqlite3 のテーブル一覧を表示するシェルスクリプト(zsh)。

データベースファイルは .db 拡張子であると仮定。

 

自分用のシェルスクリプトはこんな感じ。

tables
 
#! /bin/zsh
 
line_db='=============================================='
line_tb='----------------------------------------------'
dbs=`=ls *.db`
for db in ${(@f)dbs}
do
    echo $db
    echo $line_db
    tables=`sqlite3 $db 'SELECT DISTINCT tbl_name FROM sqlite_master;'`
    for table in ${(@f)tables}
    do
        echo $table
        echo $line_tb
        sqlite3 -header -column -cmd '.width 4 40 10 10 10 3' $db "PRAGMA table_info($table);"
        echo ""
        echo ""
    done
    echo ""
done
 

 

余計な表示用の処理を削って最低限の部分だけ残すとこんな感じ。

 
#! /bin/zsh
 
dbs=`=ls *.db`
for db in ${(@f)dbs}
do
    echo $db
    tables=`sqlite3 $db 'SELECT DISTINCT tbl_name FROM sqlite_master;'`
    for table in ${(@f)tables}
    do
        echo $table
        sqlite3 $db "PRAGMA table_info($table);"
    done
done
 

 


© Shin Nakamura/BasicWerk 2014