2

使用 zkCli.sh,

创建 -s /myznode “Hello World!” 空值

使用字符串“Hello World!”创建一个 znode

如何让它使用文件的内容而不是字符串?

4

3 回答 3

5

对于包含空格或换行符的多行文件,请尝试以下操作:

./bin/zkCli.sh create /test-node "`cat my-znode-content.xml`"
于 2017-12-07T13:52:09.493 回答
3

在 zk 节点上设置一些数据

./bin/zkCli.sh -server 172.26.65.11:2181 set /path "\`cat employee.xml\`"

或者

./bin/zkCli.sh -server 172.26.65.11:2181 set /path "\`echo 'Node data is set.'\`"
于 2019-03-13T06:51:25.217 回答
2

如果您查看 ZooKeeperMain.java,您会发现它在命令行上的唯一参数是服务器主机和要连接的端口。

如果您然后查看方法 processZKCmd(),您会发现它只接受顺序和短暂的参数。

但是,您可以将输入发送到命令,例如 ./zkCli.sh < script

其中脚本包含“创建 mynode null”

从那里创建一个输入文件并不长,该文件本身是从文件的内容创建的。例如:

echo "create `cat myfile` > script; ./zkCli.sh < script

请记住,zk 节点的大小应该相当小。

于 2013-03-07T16:44:11.040 回答