后台获得sqoop导入数据的进度——实际上是通过获得sqoop输出的状态信息(这里需要记住的是sqoop输出在终端的东西是stderr标准错误信息,而不是stdout标准输出信息),得知现在大致的运行阶段。
sqoop import --connect jdbc:mysql://10.0.3.100:3306/sqoop --username hive --password hive --table hadoop_related 2>&1 | ./rd.sh
将sqoop的标准错误信息转为标准输出信息,通过管道传给信息处理文件rd.sh(以标准输入的形式),该文件的内容如下
#!/bin/sh
while read line
do
echo $line >> ./os.txt
tail -1 ./os.txt
done
循环读取标准输入的每一行,写入到文件中,每次读取文件最后一行。