Bash 스크립트의 변수를 통해 Cassandra 명령줄에 대한 쿼리를 실행하려고 시도했지만 실패했습니다.
스크립트:
[ec2-user@ip-192-2-2-7 tmp]$ cat a.sh
#!/bin/bash
IP=192.2.2.7
EQ='SELECT id,name,title FROM student where id=100'
echo $IP
echo $EQ
xyz=`echo \"$EQ\"`
echo "======"
echo $xyz
/usr/bin/cqlsh $IP -e $xyz
[ec2-user@ip-192-2-2-7 tmp]$
구현하다
[ec2-user@ip-192-2-2-7 tmp]$ sh a.sh
192.2.2.7
SELECT id,name,title FROM student where id=100
======
"SELECT id,name,title FROM student where id=100"
Usage: cqlsh.py [options] [host [port]]
cqlsh.py: error: 'filename,' is not a valid port number.
[ec2-user@ip-192-2-2-7 tmp]$
/usr/bin/cqlsh $IP -e $xyz를 실행할 때 변수를 호출할 수 없는 이유를 누군가 제안할 수 있습니까?
다음 명령을 수동으로 실행하면 제대로 작동하지만 스크립트의 변수를 통해서는 작동하지 않습니다.
/usr/bin/cqlsh 192.2.2.7 -e "id=100인 학생의 ID, 이름 및 직위를 선택하세요."