【问题标题】:Cassandra cql shell scriptCassandra cql shell 脚本
【发布时间】:2023-03-06 01:36:01
【问题描述】:

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

这是我的脚本。

#!/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 语句保存到另一个文件。

任何帮助将不胜感激。

【问题讨论】:

    标签: shell cassandra cqlsh


    【解决方案1】:

    那是因为-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 stackoverflow.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$
    

    【讨论】:

    • 是的,就是这样。感谢您帮助一个傻瓜。
    • @PA_Commons 不用担心,我很高兴能帮上忙!
    猜你喜欢
    • 2014-10-06
    • 1970-01-01
    • 2016-10-16
    • 2016-05-20
    • 2014-07-01
    • 1970-01-01
    • 2016-11-14
    • 2019-06-29
    • 1970-01-01
    相关资源
    最近更新 更多