2013-07-04 58 views

回答

5

只需在啓動控制檯時添加-file作爲參數。

在Windows上,它應該是這樣的:

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

或者你也可以打印結果到一個新文件

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

我也肯定有一個辦法做到這一點從殼內而不是在啓動階段,因爲它曾經由Stefan Armbruster向我展示,但是爲了愛上帝,我不記得他是如何做到的。但是這種方法也適用。

2

用Neo4j網頁界面我只是複製&粘貼。

在控制檯上,我有時使用curl與Neo4j的REST接口交談。這使我可以在我的應用程序中使用相同的查詢(引用單獨的參數)。 你必須將你的文件中的查詢包裝到一個json對象中。

data.json:

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

命令:

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

在Debian/Ubuntu或任何* nix中安裝,使用從終端執行以下操作:

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

請注意,每個密碼q文件中的uery必須以分號結尾,並且必須用另一個查詢中的空行分隔。此外,.cql結尾(文件格式)不是強制性的。

+0

當前運行此操作時,它也會嘗試運行註釋掉的代碼。有沒有更好的方法來避免這種情況。沒關係太多,只是好奇而已 – NumenorForLife

3

自問這個問題後,neo4jShell.bat文件已被刪除。執行密碼文件的新方法是使用名爲LazyWebCypher的網絡應用程序。

+1

'neo4j-shell.bat'仍然存在,[你只需要下載zip文件就可以得到它](https://neo4j.com/developer/kb/using-neo4j-殼的Neo4j-CE-3X /)。它雖然被棄用,但官方替代品是'cypher-shell'。 –

0

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

上的Neo4j

3.2.1

+0

您不再需要最新版本的'-c'。 – Bill

0
$ neo4j-shell -file query.cql 

,或者使用cypher-shell

$ cat query.cql | cypher-shell