Isto parece ser uma coisa que não existe substituto direto para com ip
.
Uma solução é:
IPNM=$(ip a sh dev wlan0:avahi scope global | awk '/inet / {print $2}')
IP=${IPNM/\/*})
ip a add $IP/32 dev wlan0:avahi
ip a del $IPNM dev wlan0:avahi
Isso primeiro extrai o endereço IP, inclusive a máscara de rede, da saída de ip addr show
e armazena isso em $ IPNM. Depois disso, a parte da sub-rede é removida e armazenada em $ IP.
Agora você pode adicionar o endereço IP com a máscara de rede desejada ao dispositivo e, em seguida, remover o IP / máscara de rede antigo do dispositivo.