shell逐行读取每一列的结果集

##shell逐行读取每一列的结果集 ##

在Linux下用shell脚本读取MySQL结果集各数据项的值,按行读取sql结果,将sql执行结果读取到shell变量中,然就可进行处理。


HOSTNAME=”172.16.xx.xx”    #数据库信息
PORT=”3306”
USERNAME=”root”
PASSWORD=”root”

DBNAME=”log”         #数据库名称
TABLENAME=”student”


COMMAND1=”mysql -h{HOSTNAME}  -P{PORT}  -u USERNAMEp {PASSWORD} ${DBNAME}
方法一:
while read -a row
do
    echo “.. row[0].. {row[1]}..”
done< <(echo “select  id ,name  from  student;” | ${COMMAND1})


方法二:
while read a b
do
    echo “.. a.. {b}..”
done< <(echo “select  id ,name  from  student;” | ${COMMAND1})


注释:注意“done< <(“的写法,第一个“<”要和“done”之间没空格,两个“<”之间有一个空格,”<””(“之间没空格。



你可能感兴趣的:(linux)