那里有很多类似的问题似乎都在回答这个问题,但它并不适合我。
这是bash脚本中的mysql查询,结果行以字符串形式返回,而不是数组。 我错过了什么吗?
while read -a row;
do
echo "${row[0]}";
done < <(mysql -u $dbuser -p$dbpass -N --database=$dbname --host=$dbhost --batch -se "SELECT id, CONCAT(id, '_', filename) from photos" );
}
这回应200 200_filename.jpg
。
我认为应该回应200
回应${row[1]}
会显示一个空行。
答案 0 :(得分:0)
魔法是IFS。使用选项卡添加它可以修复数组问题
while IFS=$'\t' read -a row; do echo "${row[0]}"; done