这是我的第一个问题:)远程SSH命令,在标准输出缺少LF
我在运行远程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 [email protected] "hive -S -e '$query' 2>&1"
echo $ssh > output.tsv
感谢您的帮助!这样简单的解决方案! – Daedalus8 2013-04-29 17:31:01
最后一个适合我。 – Saad 2014-05-12 11:22:22