ループをnetcat接続にパイプする方法

ループをnetcat接続にパイプする方法

私はnetcatデーモンにパスワード(私が持っている)と4桁のパスワード(10000の可能性をすべて無差別に代入しなければ見つかりません)を提供する必要があります。現在私はやっています

#!/bin/bash
PWD='HpNYTlstOGHyQXmg6gzctqAwOmw1NiPQ'
for n in `seq 1 9999`;
do
    STR=`echo $PWD $n | nc localhost 30002`
    echo "passcode $n: $STR"
done

しかし、これは非常に遅いです。毎秒1つのパスワードを実行します。私も似たようなことができますか

#!/bin/bash
PWD='HpNYTlstOGHyQXmg6gzctqAwOmw1NiPQ'
nc localhost 30002 #somehow pipe the output to a file without closing it
for n in `seq 1 9999`;
do
    echo "$PWD $n" #echo a line into the stdin of nc
    #set STR equal to whatever was outputted from nc
    echo "passcode $n: $STR"
done

ncを手動で使用すると、1つのncインスタンスで複数行を送受信できます。しかし、bashでは1行だけを送信しているようですが、これは正しくないようです。一度に複数行をncに送信する方法は?

ベストアンサー1

forループの終わりから:

done | nc localhost 30002

おすすめ記事