使用ssh运行远程awk命令

时间:2013-11-15 22:00:05

标签: bash shell ssh awk

我尝试使用ssh运行远程awk语句。我的代码是:

ssh username@hostIP "awk 'NR==1  {max=0;min=1} NR>1 {if (max<\$3) max=\$3}END {print max}' FS=\",\" /path_to_my_file"

当我运行此命令时,我没有收到任何错误消息,但命令不起作用,并且没有产生输出但只是挂起所以我需要通过ctrl + c取消它。

我有什么遗失的吗?

1 个答案:

答案 0 :(得分:10)

使用 here-doc

尝试此操作
ssh -t username@hostIP <<'EOF'
awk '
    NR==1 {max=0;min=1}
    NR>1 {if (max<$3) max=3}
    END {print max}
' FS="," /path_to_my_file
EOF

EOF周围的单引号可防止shell扩展。