如何编辑json文件驻留在远程服务器上?

时间:2018-03-20 06:54:36

标签: ssh jq

我的远程服务器上有一个json文件

远程主机的位置:" .docker / test.josn"

{ " KEY1" :" Value1", "密钥2" :" Value2" }

我想从本地计算机向test.josn添加新元素。我正在尝试跟随命令,但它无法正常工作。

ssh <test-server> "jq '.key3 = "Value3"' .docker/test.json > .docker/test2.json && mv .docker/test2.json .docker/test.json"

它给了我以下错误:

bash: .docker/test2.json: No such file or directory

1 个答案:

答案 0 :(得分:1)

你有一个shell引用问题。你没有逃脱内部双引号。

您可以尝试以下操作:

ssh <test-server> 'jq ".key3 = \"Value3\"" .docker/test.json > .docker/test2.json && mv .docker/test2.json .docker/test.json'

用单个引号替换外部双引号,因为在此语句中不需要变量扩展。