#!/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