将mysql命令的输出解析为bash脚本中的变量

时间:2014-08-28 01:07:10

标签: mysql bash

我试图使用bash脚本来清理数据库,我需要使用users表中最大的ID号,所以我的脚本中有这一行

MAXID=$(mysql -u root -proot elis27 -e "select max(idnumber) from mdl_user;")
echo $MAXID

我脚本中该行的输出是

max(idnumber) 3

如何解析mysql命令的输出,以便MAXID只有3?

2 个答案:

答案 0 :(得分:1)

使用--skip-column-names(或简称-N)选项省略输出中的列名称标题:

MAXID=$(mysql -u root -proot -N elis27 -e "select max(idnumber) from mdl_user;")

答案 1 :(得分:1)

我会让你把awk语句放在maxid声明中,这里是简单的逻辑来得到3 -

a="max(idnumber) 3"
b=`echo $a | awk '{print $2}'`;echo $b