diff --git a/sqlite3ncsv b/sqlite3ncsv index 345a2ba..92ce223 100755 --- a/sqlite3ncsv +++ b/sqlite3ncsv @@ -1,14 +1,28 @@ #!/bin/bash -[[ -f "$1" ]] || { - echo 'Sqlite3NCSV: view sqlite3 DB with ncsv. +help() { +echo 'Sqlite3NCSV: view sqlite3 DB with ncsv. + Usage: sqlite3ncsv [FILE] [TABLE/QUERY/-l] + first argument: sqlite3 file - second, optional argument: table name. If not given, first in schema used. - If the second argument contains spaces, it is assumed to be a SELECT query. + second, optional argument: + TABLE: If not given, first in schema used. + QUERY: If the second argument contains spaces, it is assumed to be a query. + -l: List table names ' - exit +} +[[ "$1" == "-h" ]] && { + help; exit +} +[[ -f "$1" ]] || { + help; exit } sqlfile="$1" +[[ "$2" == "-l" ]] && { + sqlite3 "$sqlfile" "SELECT name FROM sqlite_master WHERE name NOT LIKE 'sqlite_%'" + exit +} + [[ -z "$2" ]] && { table=$( sqlite3 "$sqlfile" "SELECT name FROM sqlite_master WHERE name NOT LIKE 'sqlite%' LIMIT 1;" ) } || {