현재 일부 firebird 데이터베이스에서 약간의 백업 스크립트를 작성 중이며 해결할 수없는 이상한 이스케이프 문제가 발생했습니다. 여기 내 스크립트에서 sqllog라는 변수를 생성합니다.이 변수에는 명령 체인의 출력을 넣고 싶습니다. 여기 있습니다. 내가 쉘이 실행하려고하면isql을 사용하여 bash에서 이스케이프 처리 문제
sqllog=`echo "SELECT * FROM RDB\$DATABASE;" | isql -u SYSDBA -pass mypasswd localhost:mydatabase | tail -n 2 | head -n 1 | wc -l`
나는
Statement failed, SQLCODE = -204
Dynamic SQL Error
-SQL error code = -204
-Table unknown
-RDB
-At line 1, column 15.
표 알 수없는 RDB는이 $ 탈출 할 내 시도를하지 않았 음을 의미합니다 다음과 같은 오류를 얻을.
sql=$(echo "SELECT * FROM RDB\$DATABASE;")
설정합니다 SQL
SELECT * FROM RDB$DATABASE;
에 나는 그것이 무엇이라고 생각 :
사실은''징후가 문을 arround 있습니다 – flazzarini
사용 $() 대신'의' – neuro
은 허용 대답을 표시하는 것을 잊지 마십시오. 작업 난 그냥 따옴표 : 모두가 나를 돕는 들으 '와'따옴표를 대체하는 것이 –