我尝试使用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取消它。
我有什么遗失的吗?
答案 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扩展。