Bash脚本找到最大MTU

时间:2017-06-27 12:10:20

标签: bash

#!/bin/bash

PKT_SIZE='ifconfig | grep "MULTICAST" | cut -d ':' -f 2 | cut -d ' ' -f 1'
HOSTNAME=$1

count=`ping -M do -c 1 -s $PKT_SIZE $HOSTNAME | grep -c "Frag needed"`

while [ $count -eq 1 ]; do
 ((PKT_SIZE--))
 count=$((`ping -M do -c 1 -s $PKT_SIZE $HOSTNAME | grep -c "Frag needed"`))
done

printf "Your Maximum MTU is [ $((PKT_SIZE + 28)) ] \n"

为什么((PKT_SIZE--))减少不起作用?

$ 1 - 这是我写ping的网站

1 个答案:

答案 0 :(得分:0)

在(())表达式之前和之后需要一个空格。

因此((PKT_SIZE--))