好的,所以我有一个地址列表,接下来是一个端口号。问题是这并不总是正确的。例如我有这个列表:
www.google.com:80
www.gmail.com:8080
www.yahoo.com
www.msn.com:443
www.amazon.com
www.apple.com
www.hotmail.com
我想要做的是逐行浏览包含此列表的文本文件并删除地址,如果之后有端口号,.com
然后删除该端口号并将其存储在变量中。这是我尝试过的:
for each in `cat address.txt`; do
f_address=$each
f_port=`echo $each | cut -d":" -f2`
if [[ "$f_address" == *:* ]]; then
address=`echo $f_address | cut -d":" -f1`
else
address=$f_address
fi
if [ "$f_port" = "*" ]; then
port=$f_port
else
port="443"
fi
当它运行时,它不会:
在需要的时候使用它,而只是让它443
。