Neo4j 如何在文件中执行密码?

Neo4j 如何在文件中执行密码?,neo4j,cypher,Neo4j,Cypher,我在windows上工作。我用记事本创建了一个密码查询的文本文件。如何使用Neo4jShell或Neo4j web界面控制台在文件中运行查询。启动控制台时,只需添加-file作为参数即可 在windows上,它将如下所示: Neo4jShell.bat -file path/to/cql/file 也可以将结果打印到新文件中 Neo4jShell.bat -file path/to/cql/file > path/to/output/file 我也确信有一种方法可以在壳内完成,而不是

我在windows上工作。我用记事本创建了一个密码查询的文本文件。如何使用Neo4jShell或Neo4j web界面控制台在文件中运行查询。

启动控制台时,只需添加
-file
作为参数即可

在windows上,它将如下所示:

Neo4jShell.bat -file path/to/cql/file 
也可以将结果打印到新文件中

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

我也确信有一种方法可以在壳内完成,而不是在启动时,正如Stefan Armburster曾经向我展示的那样,但出于上帝的爱,我不记得他是如何做到的。但是这种方法也很管用。

对于Neo4j web界面,我只需复制和粘贴即可

在控制台上,我有时使用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
在Debian/Ubuntu或任何*nix安装上,从终端使用以下命令:

$
neo4j shell-c


请注意,文件中的每个cypher查询必须以分号结尾,并且必须与另一个查询之间用空行分隔。此外,
.cql
结尾(文件格式)不是强制性的。

自提出此问题以来,neo4jShell.bat文件已被删除。执行cypher文件的新方法是使用名为.

/bin/neo4j shell-path../data/databases/-c 关于Neo4j 3.2.1

$ neo4j-shell -file query.cql
或者使用
cypher shell

$ cat query.cql | cypher-shell

当前,当运行此命令时,它还会尝试运行注释掉的代码。有没有更好的方法来避免这种情况。没什么大不了的,只是好奇的
neo4jshell.bat
仍然存在。虽然它已被弃用,但正式的替代品是
cypher shell
。在最新版本中,您不再需要
-c