私のスクリプトには次の行があります。
mysqlinsert=$(/Applications/MAMP/Library/bin/mysql --host=localhost -uroot -proot --password=notmyrealpassword << EOF
$mysqlrun)
何を返しても、変数は$mysqlinsert
常に空です。-n
mysqlで使用(出力バッファリングを無効にする)を試み、EOF
Behindを試しましたが、$mysqlrun
どちらも機能しませんでした。
答え1
コマンドが目的の出力を stderr に送信する場合は、コマンドオーバーライドでコマンドの stderr をリダイレクトします。
mysqlinsert=$(/Applications/MAMP/Library/bin/mysql ... 2>&1 << EOF ...)
#
# /\______addition____
...提案された変更に焦点を当てるために、いくつかのパラメータを省略しました。