#!/bin/bash # 运行ifconfig命令并将结果存储到变量中 ifconfig_output=$(ifconfig) # 使用grep命令从ifconfig输出中提取IP地址行 ip_line=$(echo "$ifconfig_output" | grep -oE 'inet (addr:)?([0-9]*\.){3}[0-9]*') # 使用sed命令提取IP地址 ip_address=$(echo "$ip_line" | grep -oE '([0-9]*\.){3}[0-9]*') # 输出IP地址 echo "IP地址: $ip_address"
使用上述脚本,它会执行ifconfig命令并将结果存储在ifconfig_output
变量中。然后,使用grep命令提取包含IP地址的行,并使用sed命令从该行提取IP地址。最后,将IP地址打印出来。
请注意,上述脚本提取的是ifconfig命令输出中的第一个IP地址。如果你的系统上有多个网络接口或IP地址,你可能需要进一步修改脚本以适应你的需求。