#!/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--))遞減不起作用?Bash腳本查找最大MTU
$ 1 - 這是我寫的網站平
'PKT_SIZE ='ifconfig | grep「MULTICAST」| cut -d':'-f 2 |切斷-d''-f 1',命令替換不起作用。它應該是'PKT_SIZE = \'ifconfig | grep「MULTICAST」| cut -d':'-f 2 | cut -d''-f 1 \'' – zhenguoli
是的,我知道我剛剛從編輯器插入 –
有時理解和調試都會更好!通過幾個步驟來完成複雜的表達;這樣,中間體可以被檢查並且可以在腳本中被驗證。 – MikeW