如何获取带双引号的Cassandra Keyspace Schema?执行命令报错
如何获取名称包含双引号的Cassandra Keyspace Schema?
你遇到的问题是命令里的双引号嵌套导致shell解析错误——外层的双引号和内层标注keyspace名称的双引号冲突,shell会错误地提前闭合引号,引发语法报错。可以用以下两种方法解决:
使用单引号包裹
cqlsh -e的参数内容,这样内部的双引号会被CQL正确识别,不会被shell解析:cqlsh -e 'desc keyspace "OpsCenter";'如果你的Keyspace名称本身就包含双引号(比如名称是
"My"Keyspace"),需要在CQL里用双引号转义内部的双引号,同时配合shell的引号规则处理:
方法1:用单引号包裹参数,内部用三个双引号转义:cqlsh -e 'desc keyspace """My""Keyspace""";'方法2:用双引号包裹参数,内部双引号用反斜杠转义:
cqlsh -e "desc keyspace \"\"My\"\"Keyspace\"\";"
执行上述对应命令后,就能正确获取包含双引号的Keyspace Schema了。
内容的提问来源于stack exchange,提问作者user12189187
相关产品推荐
相关产品推荐

