1

データベースからいくつかの行を読み取って、EMAIL_DESC という複数行のシェル変数に入れることで、電子メール メッセージを作成しています。

EMAIL_DESC=`run "select text from  ETL.MAIL_TEXT where ID=1 order by id, text_order"`

残念ながら、date$EMAIL_DESC 内に変数とコマンド ( ) がありますが、それらを置き換えることはできません。

echo "$EMAIL_DESC"
Please be aware that all user tables and views on the $SERVER_DESC
Ended = `date`.

何か案が?

4

2 に答える 2

0

解決策を見つけました。

データベースのすべての行の最後に「\\n」(改行) を追加する必要があり、eval を変更してエコー (-e) から追加のパラメーターを受け入れる必要があります。

eval "echo -e "${EMAIL_DESC}" "

もう一度ありがとうアレックス

于 2013-03-13T12:33:21.677 に答える
0

質問はあまり明確ではありません。しかし、私が理解できることは何でも、あなたはここで邪悪な評価を探していると思います。このことを考慮:

x='Foo
Bar
$HOME
Baz
$SHELL'

echo $x
eval echo $x

出力:

Foo Bar $HOME Baz $SHELL
Foo Bar /home/alex Baz /bin/bash
于 2013-03-12T18:09:20.737 に答える