Вывод sqlite3 с вкладками из одной строки - PullRequest
14 голосов
/ 01 июля 2011

Я хочу, чтобы вывод sqlite3 был разделен табуляцией.Опция -column мне не подходит, потому что отдельные записи с пробелами и моими значениями имеют пробелы, но без вкладок.

Если я использую интерактивно sqlite3, я могу использовать .mode tab.В однострочной команде есть опция -separator, но я не знаю, как добавить туда вкладку, которая интерпретируется как не буквальная вкладка (вероятно, с кодом ASCII?)

Есть предложения?Все примеры Google, которые я нашел, были для интерактивного sqlite3.

В настоящее время я использую метод грубой силы:

sqlite3 -header mydb "select * from table1" | tr \| '\t' > myoutput

Ответы [ 2 ]

24 голосов
/ 01 июля 2011

Это должно работать:

sqlite3 -separator $'\t' -header mydb "select * from table1"

$ указывает вашей оболочке расширяться до символа табуляции.

13 голосов
/ 11 июля 2013

Вы можете напрямую использовать .mode tab при использовании sqlite в сценарии оболочки (например), используя здесь документ, такой как:

sqlite3 -header mydb <<EOF
.mode tabs
select * from table1;
EOF
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...