Můžete použít .output
nebo .once
dot pro uložení výsledků dotazu do textového souboru při použití SQLite CLI.
Příkaz .once
Pokud chcete do souboru uložit pouze jeden dotaz, použijte .once
příkaz.
.once
příkaz určuje, že další dotaz bude odeslán do zadaného souboru. Jakékoli další dotazy se vrátí na standardní výstup (konzole).
.headers on
.mode column
.once query_results.txt
SELECT * FROM Products;
Výše uvedený kód odesílá výsledky do textového souboru s názvem query_results.txt v aktuálním adresáři. Pokud potřebujete zadat jiný adresář, použijte úplnou cestu.
V tomto případě jsem také povolil záhlaví sloupců a nastavil režim na „sloupec“.
Zde je obsah textového souboru:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
Skutečnost, že jsem použil .once
znamená, že jakékoli další dotazy budou odeslány do konzole.
Pokud potřebujete uložit všechny další dotazy do textového souboru, použijte .output
.
Příkaz .output
.output
příkaz určuje, že veškerý další výstup bude odeslán do zadaného souboru.
Všechny následné výsledky dotazu budou připojeny ke stávajícímu obsahu.
Vezměte si například následující kód:
.output query_results2.txt
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;
V tomto případě jsem provedl dva dotazy.
Zde je to, co obsahuje výsledný textový soubor:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
Takže zahrnul výsledky z obou dotazů. Vidíme, že byl připojen druhý dotaz.
Všimněte si, že jsem nemusel zadávat .headers on
nebo .mode column
v tomto příkladu, protože jsem to již uvedl v mém předchozím příkladu. Tato nastavení zůstanou v aktuální relaci, dokud nebudou explicitně změněna.
Resetovat výstup na obrazovku
Pro návrat výstupu na standardní výstup (konzole) můžete použít následující příkaz:
.output stdout
Případně můžete jednoduše vynechat jakýkoli argument:
.output
Automaticky otevřít textový soubor
Můžete použít .system
příkaz k otevření textového souboru. Přesná syntaxe, kterou použijete, bude záviset na vašem systému.
Zde je návod, jak otevřít předchozí soubor na Macu:
.system open query_results2.txt
To předpokládá, že jste ve stejném adresáři jako soubor. V opačném případě budete muset použít úplnou cestu.
Tím se soubor otevře ve výchozí aplikaci systému pro otevírání textových souborů.
V systému Windows může váš kód vypadat spíše takto:
.system c:/data/query_results2.txt
V systému Linux/Unix:
.system xdg-open query_results2.txt