Цитирование проблем в bash / linux - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть сценарий bash, в который я помещаю некоторые операторы SQL select, но у меня ужасное время, чтобы заставить их правильно читать.Одинарные кавычки, двойные кавычки и т. Д., Кажется, не так быстро, если вы хотите использовать весь SQL-оператор, как он есть.

Пример:

declare -a array=(
'1=Unprocessed===SELECT count(*) FROM db.table WHERE thing1='unknown' and thing2='unknown' and thing3='unknown''
)

Я устал бежать отодинарные кавычки - я устал двойные кавычки вокруг всего этого.Я пробовал одинарные и двойные кавычки и т.д.

1 Ответ

0 голосов
/ 27 февраля 2019

idk, что 1=Unprocessed=== должно быть, но это то, что вы просите:

$ declare -a array=(
'1=Unprocessed===SELECT count(*) FROM db.table WHERE thing1='\''unknown'\'' and thing2='\''unknown'\'' and thing3='\''unknown'\'''
)

$ echo "${array[0]}"
1=Unprocessed===SELECT count(*) FROM db.table WHERE thing1='unknown' and thing2='unknown' and thing3='unknown'
...