linux - 与 netcat 的持续通信
问题描述
我有一个 bash 脚本,我需要使用 netcat 与服务器通信。我想要做
1.与 nc
连接 2.阅读答案
3.决定如何处理答案
4.向服务器发送数据
5.返回 2
这是我的代码。但是在 echo $JOB_STRING | 之后它没有前进 网猫 $BAGLANTI $PORT
$(echo $JOB_STRING | netcat $BAGLANTI $PORT)
read line
if [[ $line == "2.7" ]]; then
echo Sunucu Verisyonu $line
---Send something to nc server
else
echo "İş geldi"
---Send something to nc server
fi
我也尝试将响应存储在变量中,但这也不起作用
RESPONSE="$(echo $JOB_STRING | nc $BAGLANTI $PORT)"
if [[ $RESPONSE "2.7" ]]; then
echo Sunucu Verisyonu $line
else
echo "İş geldi"
fi
解决方案
试试这个:
while read line; do
if [[ $line == "2.7" ]]; then
echo Sunucu Verisyonu $line
else
echo "İş geldi"
fi
done < $(echo $JOB_STRING | netcat $BAGLANTI $PORT)
编辑:
echo $JOB_STRING | netcat $BAGLANTI $PORT | while read line; do
if [[ $line == "2.7" ]]; then
echo Sunucu Verisyonu $line
else
echo "İş geldi"
fi
done
推荐阅读
- python - 简单函数问题,赋值前引用的局部变量
- statistics - Julia:典型相关分析(canonical variates analysis)——如何得到典型向量?
- angular - Add ionic 4 icon to ng select dropdown menu
- google-cloud-platform - 公开文件的安全读取 URL
- ios - 同时处理两个手势识别器
- c# - 我应该如何使用 P/Invoke 将字符串数组传递给 C 库?
- sql-server - Azure SQL 单数据库 DTU 超时已过期错误
- angular - 如何呈现“浮动”消息?
- pandas - Pandas Dataframe - 更新没有循环的动态行和列
- database - 如何设置 CouchDB 附件存储为文件而不是映射到数据库中