随笔-shell-socket client

socket client

net_client.sh

ro_host=$1
ro_port=$2
proto=$3
body=$4
msg=""

[[ -z "$ro_host" || -z "$ro_port" || -z "$proto" || -z "$body" ]] && {
    echo "bad paramters"
    exit
}

exec 8<>/dev/"$proto"/"$ro_host"/"$ro_port"
ret=$?
if [ $ret != 0 ]; then
    exit
fi

echo -ne "$body" >&8
ret=$?

[[ $ret -eq 0 ]] && msg=$(timeout 5 cat <&8)

exec 8<& -; exec 8>& -

echo -e "$msg"
bash net_client.sh "192.168.99.85" "22660" "udp" "metrics"
bash net_client.sh "192.168.99.85" "22660" "udp" "benchmark"

shell 发送 16进制

示例:给192.168.137.1上的15000端口tcp服务发送16进制报文内容000F737D61747573并将响应报文以16进制格式回显出来

(sleep 2;echo "000F737D61747573" | xxd -r -p ;sleep 1)|nc 192.168.137.1 15000|hexdump -C # tcp 给nc添加参数-u可改为udp
posted @ 2024-12-28 10:55  LiYanbin  阅读(6)  评论(0)    收藏  举报