cqlsh相当于mysql -e

时间:2014-06-11 10:52:30

标签: shell cassandra cqlsh

我试图创建一个小的shell脚本,通过cqlsh直接从命令行运行命令非常方便。

在MySQL中我可以做类似的事情:

mysql -u root  -e "show databases;"

是否有一个等同于-e的cqlsh,或者是最接近的等价物放置我想在文件中运行的任何命令并使用-f

由于

2 个答案:

答案 0 :(得分:5)

对于一次性命令,cqlsh 4.1.1也有一个-e选项:

$cqlsh -e 'desc keyspaces' -u myusername -p mypassword localhost

branch     stackoverflow  products  system_auth  
customers  system         branches  system_traces

如果您有一些复杂的事情,比如多行命令,那么-f上的cqlsh选项应该是您想要做的。为了演示,我将创建一个名为descTables.cql的简单cql脚本文件,如下所示:

$ cat descTables.cql
use stackoverflow;
desc tables;

现在,我将使用cqlsh -f

调用该cql脚本
$cqlsh -f descTables.cql -u myusername -p mypassword localhost

datasimple  items

仅供参考 - 看起来最新版本的2.0有cqlsh 4.1.1,其中有-e标志。在我的一个实例中,我有4.1.0并且-e选项不可用。

答案 1 :(得分:0)

下面列出了更多选项:

  1. “ -​​ C”,“ - color”,action ='store_true',dest ='color',help ='始终使用 颜色输出'
  2. “ -​​ no-color”,action ='store_false',dest ='color',help ='永远不要使用 颜色输出'
  3. “ -​​ u”,“ - username”,help =“以用户身份验证。”
  4. “ -​​ p”,“ - password”,help =“使用密码验证。”
  5. ' - k',' - keyspace',help ='对给定的密钥空间进行身份验证。'
  6. “ -​​ f”,“ - file”,help =“从FILE执行命令,然后退出”
  7. “ -​​ t”,“ - transport-factory”,help =“使用提供的Thrift传输 工厂功能。“
  8. ' - debug',action ='store_true',help ='显示其他调试 信息'
    1. ' - cqlversion',default = DEFAULT_CQLVER,help ='指定一个特定的 CQL版本(默认值:%默认值)。''示例:“3.0.3”,“3.1.0”'