while IFS=# read -r process_id source destination type
do
echo "Process id: $process_id"
echo "Source: $source"
echo "Destination: $destination"
case "$type" in
2)
echo "Type is outbound: $type"
contact=$(sqlplus -s ${SQLPLUS_INFO} <<EOF
SET PAGESIZE 0
SELECT email FROM table WHERE partner = '${destination}';
exit
EOF
)
echo
echo ${contact}
echo
;;
總部設在上面的代碼中,如何從$目標中的值傳遞給查詢?上面的例子不工作,即使是這些其他的:
SELECT email FROM table WHERE partner = '"${destination}"';
SELECT email FROM table WHERE partner = '$destination';
任何幫助將是有益的!謝謝!
取出'contact = $('和')'來查看是否是問題的根源。我希望這能夠按原樣運行,但命令替換('$(...)')可能是一個問題。祝你好運。 – shellter
作爲一個單獨的想法,在調用'contact = $(....)'之前添加'export destination'。祝你好運。 – shellter
contact = sqlplus -s $ {SQLPLUS_INFO} << EOF SET PAGESIZE 0 SELECT email FROM table WHERE partner ='$ {destination}'; 退出 EOF 沒有工作,以及,它返回: 行73:語法錯誤:文件意外結束 只是用()沒有工作,以及,返回: 語法錯誤附近意外的標記' <<' 。 。 PS:導出也沒有工作 @shellter,@Emmanuel –