我想知道为什么变量($HOST
和$i
)没有传递给timeout 1 bash -c 'cat < /dev/null > /dev/tcp/$HOST/$i' && echo $?
命令。
#!/bin/bash
HOST=$1
for i in {0..8889}
do
OPENPORT=$(timeout 1 bash -c 'cat < /dev/null > /dev/tcp/$HOST/$i' && echo $?)
if [ "$OPENPORT" == 0 ]
then
echo -e "Port $i is open on $HOST.\n"
fi
done
答案 0 :(得分:2)