mysqlの結果をbash変数として

mysqlの結果をbash変数として

私のスクリプトは次のとおりです

#!/bin/bash

mysql dbname -N -uroot -p -hhost -se "SELECT COUNTRY, COUNTRY_NAME FROM server ORDER BY COUNTRY"

output=$(mysql dbname -N -uroot -p -hhost -se "SELECT COUNTRY, COUNTRY_NAME FROM server ORDER BY COUNTRY")
echo $output

結果は次のとおりです。

Enter password: 
CN  China
CZ  Czech Republic
FI  Finland
JP  Japan
NL  Netherlands
RO  Romania
SG  Singapore
UA  Ukraine
US  United States
US  United States
US  United States
US  United States
Enter password: 
CN China CZ Czech Republic FI Finland JP Japan NL Netherlands RO Romania SG Singapore UA Ukraine US United States US United States US United States US United States

outputmysqlクエリの出力にbash変数を設定したいが、outputすべての新しい行が削除されることを除いて、変数は問題ないようです。私の質問はbash変数をmysqlクエリの結果、行の各行にどのように設定しますか?

ベストアンサー1

変える

echo $output

引用してみてください!読む噴射

echo "$output"

スペース/メタ文字を含むすべてのリテラルは「二重引用符」として扱われます。すべて拡張:"$var"、、、、。"$(command "$var")"​コードやテキストについてはを参照してください。"${array[@]}""a & b"'single quotes'$'s: 'Costs $5 US'ssh host 'echo "$HOSTNAME"'
http://mywiki.wooledge.org/Quotes
http://mywiki.wooledge.org/Arguments
http://wiki.bash-hackers.org/syntax/words

おすすめ記事