捕获控制台输出

捕获控制台输出

我正在从 shell 脚本运行 Hadoop hive 查询。这是我在 shell 脚本中执行的操作。

echo "SELECT COUNT(*) FROM test" | hive

我想捕获hive命令输出的任何内容。因此,我运行 shell 脚本如下:

./hivequery.sh 2>&1 | tee output.txt

但是,我无法捕获命令的输出hive。我该怎么做?

答案1

明白了。我在脚本内的 shell 命令本身中添加了重定向运算符。

echo "SELECT COUNT(*) FROM test" | hive 2>&1

script也起作用了。

script -c ./myscript.sh output.txt

答案2

尝试这个:

$HIVE_HOME/bin/hive -S -e 'select a.col from tab1 a' > a.txt

https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Cli

相关内容