我无法将 SFTP 命令的输出存储到结果变量中。 命令是
result=`sftp -oPort=$p_port $p_ftp_user_id@$p_host <<EOF
cd $p_remote_dir
mget TEST_FEED*
rm TEST_FEED*
exit
EOF`
echo "$result"
在shell脚本中输出err时命令如何触发,如下所示:
Gtk-WARNING **:无法打开显示:dora:0.0主机密钥验证 失败。无法读取数据包:通过对等方重置连接
我希望将此错误存储在 result 变量中,以便我可以将其用于以下验证:
value2=`echo "$result" |grep "failed" |wc -l`
但我将结果视为空。请帮助我在这里失踪。
答案 0 :(得分:1)
您应该使用sftp
2>&1
命令的stdout
result=$(sftp -oPort=$p_port $p_ftp_user_id@$p_host <<EOF 2>&1
cd $p_remote_dir
mget TEST_FEED*
rm TEST_FEED*
exit
EOF
)
echo "$result"