2013-07-04 3 views

Antwort

5

Fügen Sie einfach -file als Parameter beim Starten der Konsole hinzu.

auf Fenster, würde es so aussehen:

Neo4jShell.bat -file path/to/cql/file 

Oder man könnte auch das Ergebnis in eine neue Datei drucken

Neo4jShell.bat -file path/to/cql/file > path/to/output/file 

Ich bin auch sicher, dass es eine Möglichkeit, es zu tun ist, aus der Schale heraus und nicht beim Start, wie es mir Stefan Armbruster einmal vorgeführt hat, aber aus Liebe zu Gott kann ich mich nicht erinnern, wie er es gemacht hat. Aber dieser Ansatz funktioniert auch.

2

Mit Neo4j Web-Schnittstelle kopiere ich einfach & Paste.

Auf der Konsole verwende ich manchmal curl, um mit Neo4js REST-Schnittstelle zu sprechen. Dadurch kann ich dieselben Abfragen (mit Verweisen auf separate Parameter) verwenden, die ich in meiner Anwendung habe. Sie müssen die Abfrage in Ihre Datei in ein JSON-Objekt für das Wrapping umbrechen.

data.json:

{ 
    "query":"match (u:User) where u.username={username} return u", 
    "params":{"username":"trenkerbe"} 
} 

Befehl:

curl -i -X POST -H "Content-Type: application/json" -d @data.json http://localhost:7474/db/data/cypher 
13

auf Debian/Ubuntu oder irgendwelche * nix Installationen, verwenden Sie die folgende von der Klemme:

$ neo4j-shell -c < path-to-cypher-query-file.cql

Beachten Sie, dass jede Chiffre q Die Datei muss in einem Semikolon enden und muss durch eine Leerzeile von der anderen Abfrage getrennt sein. Auch die .cql Endung (Dateiformat) ist nicht zwingend erforderlich.

+0

Derzeit, wenn man das ausführt, versucht es auch, auskommentierten Code auszuführen. Gibt es einen besseren Weg, dies zu vermeiden? ist nicht so wichtig, nur neugierig – NumenorForLife

3

Die Datei neo4jShell.bat wurde entfernt, seit diese Frage gestellt wurde. Der neue Ansatz zum Ausführen von Chiffre-Dateien besteht darin, die Web-Anwendung LazyWebCypher zu verwenden.

+1

'neo4j-shell.bat' existiert noch, [Sie müssen nur die Zip-Datei herunterladen, um es zu bekommen] (https://neo4j.com/developer/kb/using-neo4j- shell-neo4j-ce-3x /). Es ist zwar veraltet, aber der offizielle Ersatz ist "Chiffre-Shell". –

0

./bin/neo4j-shell -path ../data/databases/ -c < commands.cql

auf Neo4j 3.2.1

+0

Sie benötigen das '-c' nicht mehr in den neuesten Versionen. – Bill

0
$ neo4j-shell -file query.cql 

oder mit cypher-shell

$ cat query.cql | cypher-shell