while read line有2个不一样的方式读取文件:数据库
以命令行结果做为输入:spa
cat /tmp/table.list|while read line; do命令行
echo $line
索引
donetable
直接以文件做为输入:循环
while read line; do数据
echo $line
脚本
done</tmp/table.listtab
脚本是从IBM AIX(KSH)系统中移植过来的,目的是要对DB2数据库中表和索引进行维护。原来的脚本使用的是第1种方式,在IBM AIX下运行是没有问题的。移植到SUSE LINUX(BASH)系统后,发现第1种方式在循环体中运行DB2语句会报找不到数据库链接,须要在循环体中从新从新链接数据库才能够。后来换成第2种方式,就不须要在循环体中从新链接了。文件