Sie können ein einfaches awk-Skript wie in:
verwenden %Vor%Sehr einfach. Auch viel einfacher und flexibler als der Spaltenmodus von SQLite.
Dies ist nur eine Augenweide, wenn Sie mit SQLite im Terminal arbeiten, aber gibt es eine Möglichkeit, die Spaltenbreite mit Headern zu formatieren, so dass jeder Header entsprechend angepasst wird (und unabhängig von den anderen Spalten)? Mit anderen Worten, hier ist die Ausgabe mit
%Vor%für eine einfache Tabelle
%Vor%Es tut, was ich erwarten würde. Sie ändert die Größe jeder Spalte so, dass das längste Element in einer Spalte angezeigt werden kann. Allerdings möchte ich die Ausgabe automatisch so formatieren, dass jede Spalte für das längste Element in nur seiner -Spalte breit genug ist. Mit anderen Worten, ich möchte nicht
eingeben müssen %Vor%nach der Tatsache, um diese Ausgabe zu erhalten
%Vor%Gibt es etwas, was ich tun kann, um die Spaltengröße richtig zu automatisieren?
Für eine "menschenlesbare" Ausgabe können Sie column
mode verwenden und header
output aktivieren. Das wird Ihnen etwas Ähnliches wie die Ausgabe sqlplus
in Ihren Beispielen geben:
Sie können das automatisch mit rlwrap
und column
:
Weitere Informationen finden Sie in meiner Antwort auf sqlite3 schneidet / schneidet / schneidet meine Textspalten ab .
Das Werkzeug %code% hat keine solche Funktion.
Sie müssten die Spaltenbreiten manuell berechnen ( %code% ).
Dies ist nur eine Augenweide, wenn Sie mit SQLite im Terminal arbeiten, aber gibt es eine Möglichkeit, die Spaltenbreite mit Headern zu formatieren, so dass jeder Header entsprechend angepasst wird (und unabhängig von den anderen Spalten)? Mit anderen Worten, hier ist die Ausgabe mit
%Vor%für eine einfache Tabelle
%Vor%Es tut, was ich erwarten würde. Sie ändert die Größe jeder Spalte so, dass das längste Element in einer Spalte angezeigt werden kann. Allerdings möchte ich die Ausgabe automatisch so formatieren, dass jede Spalte für das längste Element in nur seiner -Spalte breit genug ist. Mit anderen Worten, ich möchte nicht
eingeben müssen %Vor%nach der Tatsache, um diese Ausgabe zu erhalten
%Vor%Gibt es etwas, was ich tun kann, um die Spaltengröße richtig zu automatisieren?
Sie können das automatisch mit %code% und %code% :
machen %Vor%Weitere Informationen finden Sie in meiner Antwort auf sqlite3 schneidet / schneidet / schneidet meine Textspalten ab .
Sie können ein einfaches awk-Skript wie in:
verwenden %Vor%Sehr einfach. Auch viel einfacher und flexibler als der Spaltenmodus von SQLite.
Aus der Dokumentation von SQLite :
Wenn Sie eine Spalte mit einer Breite von 0 angeben, wird die Spaltenbreite automatisch auf das Maximum von drei Zahlen angepasst: 10, die Breite des Headers und die Breite der ersten Datenzeile. Dies macht die Spaltenbreite selbsteinstellend. Die Standardeinstellung für die Breite jeder Spalte ist der Wert 0 für die automatische Anpassung.
Für eine "menschenlesbare" Ausgabe können Sie %code% mode verwenden und %code% output aktivieren. Das wird Ihnen etwas Ähnliches wie die Ausgabe %code% in Ihren Beispielen geben:
%Vor%Aus der Dokumentation von SQLite :
Wenn Sie eine Spalte mit einer Breite von 0 angeben, wird die Spaltenbreite automatisch auf das Maximum von drei Zahlen angepasst: 10, die Breite des Headers und die Breite der ersten Datenzeile. Dies macht die Spaltenbreite selbsteinstellend. Die Standardeinstellung für die Breite jeder Spalte ist der Wert 0 für die automatische Anpassung.
Tags und Links sql sqlite formatting terminal sqlite3