Мне нужно использовать grep для IP-адреса (как в следующем примере), я использую сценарий ksh,
# ifconfig -a | /usr/xpg4/bin/grep "100\.106\.2\.120 "
inet 100.106.2.120 netmask ffffff00 broadcast 100.106.2.255
но как получить IP-адрес из параметра (IP_ADDRESS)?
как добавить обратную косую черту в этом случае
IP_ADDRESS = 192.2.34.2 или IP_ADDRESS = 192.2.34.20 ... и т. Д.
# ifconfig -a | /usr/xpg4/bin/grep "$IP_ADDRESS "
Если вы используете оболочку bash, вы можете использовать расширение параметра:
ifconfig -a | /usr/xpg4/bin/grep "${IP_ADDRESS//./\\.}"
Если ваша оболочка не поддерживает этот тип расширения параметров, вы можете вместо этого использовать расширение оболочки, например с sed:
ifconfig -a | /usr/xpg4/bin/grep `echo $IP_ADDRESS | sed 's/\./\\./g'`
или perl:
ifconfig -a | /usr/xpg4/bin/grep `echo $IP_ADDRESS | perl -pne 's/\./\\./g'`