Puoi usare il .output
o .once
dot comandi per salvare i risultati della query in un file di testo quando si utilizza SQLite CLI.
Il comando .once
Se vuoi salvare solo una singola query in un file, usa .once
comando.
Il .once
comando specifica che la query successiva verrà inviata al file specificato. Eventuali ulteriori query torneranno allo standard output (la console).
.headers on
.mode column
.once query_results.txt
SELECT * FROM Products;
Il codice sopra restituisce i risultati in un file di testo chiamato query_results.txt nella directory corrente. Usa il percorso completo se devi specificare un'altra directory.
In questo caso ho anche abilitato le intestazioni di colonna e impostato la modalità su "colonna".
Ecco il contenuto del file di testo:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
Il fatto che ho usato .once
significa che eventuali ulteriori query verranno inviate alla console.
Se hai bisogno che tutte le ulteriori query siano salvate nel file di testo, usa .output
.
Il comando .output
Il .output
comando specifica che tutto l'ulteriore output verrà inviato al file specificato.
Eventuali risultati di query successivi verranno aggiunti ai contenuti esistenti.
Prendi ad esempio il seguente codice:
.output query_results2.txt
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;
In questo caso ho eseguito due query.
Ecco cosa contiene il file di testo risultante:
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
Quindi ha incluso i risultati di entrambe le query. Possiamo vedere che la seconda query è stata aggiunta.
Nota che non avevo bisogno di specificare .headers on
o .mode column
in questo esempio perché l'avevo già specificato nel mio esempio precedente. Tali impostazioni rimangono nella sessione corrente finché non vengono modificate in modo esplicito.
Ripristina l'output sullo schermo
È possibile utilizzare il comando seguente per ripristinare l'output standard (la console):
.output stdout
In alternativa, puoi semplicemente omettere qualsiasi argomento:
.output
Apri automaticamente il file di testo
Puoi usare il .system
comando per aprire il file di testo. L'esatta sintassi che utilizzi dipenderà dal tuo sistema.
Ecco come aprire il file precedente su un Mac:
.system open query_results2.txt
Ciò presuppone che tu sia nella stessa directory del file. Altrimenti dovrai utilizzare il percorso completo.
Questo apre il file nell'applicazione predefinita del sistema per l'apertura di file di testo.
Su un sistema Windows, il tuo codice potrebbe essere più simile a questo:
.system c:/data/query_results2.txt
Su Linux/Unix:
.system xdg-open query_results2.txt