这是我在这里的第一个问题:)
我在运行远程 SSH 命令时遇到了问题。问题是命令的输出以没有 LF 分隔行的字符串形式返回。我自己检查了 Hive 的输出,它正常输出 LF,当我从远程主机运行命令时它们丢失了。有什么方法可以维护远程主机的输出吗?
这是代码片段:
#!/bin/bash
partition="2013-04-02"
query=$(cat <<EOF
set mapred.job.name="Unique IP - $partition";
select
distinct
src
,dst
,service
,proto
,action
from
logs
where
src rlike "^10\."
and src not rlike "^10\.90\."
and src not rlike "^10[0-9]\."
and src not rlike "\.5[2-8]$"
and dst <> ""
and day="$partition";
EOF)
ssh=`ssh user@hadoop "hive -S -e '$query' 2>&1"
echo $ssh > output.tsv