Cassandra cql shell 脚本

Cassandra cql shell script

我在这里遇到一个简单脚本的问题。只是找不到解决我的问题的记录帮助。

这是我的脚本。

#!/bin/bash 

$VCOPS_BASE/cassandra/apache-cassandra-2.1.8/bin/cqlsh --ssl --cqlshrc  $VCOPS_BASE/user/conf/cassandra/cqlshrc 

-e "cql_statement;"

为了简单起见,我省略了 cql,但每次我从命令行 运行 我的文件时,我只需输入 cql shell。

--execute 和 echo 也不起作用,我真的不确定为什么我需要将 cql 语句保存到另一个文件。

如有任何帮助,我们将不胜感激。

那是因为 -e 是一个 cqlsh 选项,而不是一个独立的 bash 命令。因此,它需要与您的 cqlsh 命令位于 相同的 行。

#!/bin/bash 

$VCOPS_BASE/cassandra/apache-cassandra-2.1.8/bin/cqlsh --ssl --cqlshrc $VCOPS_BASE/user/conf/cassandra/cqlshrc -e "cql_statement;"

我用一个更简单的版本对此进行了测试:

aploetz@dockingBay94:~/scripts$ cat getEmail.sh
#!/bin/bash

cqlsh -u cassandra -p cassandra -e "SELECT * FROm Whosebug.users_by_email WHERe email='mreynolds@serenity.com';"

aploetz@dockingBay94:~/scripts$ ./getEmail.sh 

 email                  | id                                   | username
------------------------+--------------------------------------+----------
 mreynolds@serenity.com | d8e57eb4-c837-4bd7-9fd7-855497861faf |      Mal

(1 rows)
aploetz@dockingBay94:~/scripts$