在Linux系统上使用正确的以太网接口
大多数系统如笔记本电脑都有两个接口。。。我需要系统正在使用的主设备(假设只有一个),例如eth0 wlan0或RHEL7试图执行的任何操作 我最擅长的是:在Linux系统上使用正确的以太网接口,linux,bash,Linux,Bash,大多数系统如笔记本电脑都有两个接口。。。我需要系统正在使用的主设备(假设只有一个),例如eth0 wlan0或RHEL7试图执行的任何操作 我最擅长的是: #!/bin/bash # -- Get me the interface for the main ip on system for each in $(ls -1 /sys/class/net) ;do result=$(ip addr show $each | awk '$1 == "inet" {gsub(/\/.*$/
#!/bin/bash
# -- Get me the interface for the main ip on system
for each in $(ls -1 /sys/class/net) ;do
result=$(ip addr show $each | awk '$1 == "inet" {gsub(/\/.*$/, "", $2); print $2}' | grep "$(hostname -I | cut -d' ' -f1)")
if [ ! -z "${result// }" ] && [ -d /sys/class/net/${each// } ] ;then
echo "Device: $each IP: $result"
break;
fi
done
样本输出:
./maineth.sh
Device: enp0s25 IP: 192.168.1.6
此方法假设hostname-I首先提供主ip,这可能足够了,如果其他人回答,我将给予奖励:
$ nmcli dev status | grep -i "wired" | awk '{print $1}' | head -1
enp0s25
$ nmcli dev status | grep -i "wifi" | awk '{print $1}' | head -1
wlp3s0
这可能就足够了,如果其他人回答,我将给予表扬:
$ nmcli dev status | grep -i "wired" | awk '{print $1}' | head -1
enp0s25
$ nmcli dev status | grep -i "wifi" | awk '{print $1}' | head -1
wlp3s0
和一个稍微简单一点的老年退休金计划:
ip a | awk 'BEGIN{ "hostname -I|cut -d\" \" -f 1" | getline ip} $2 ~ ip {print "Device: "$NF " IP: "$2}'
和一个稍微简单一点的老年退休金计划:
ip a | awk 'BEGIN{ "hostname -I|cut -d\" \" -f 1" | getline ip} $2 ~ ip {print "Device: "$NF " IP: "$2}'
还有一种方法:
ip addr show | grep "state UP"
下面是一个小脚本,它将显示统计信息,以便您可以验证哪个最活跃:
#!/bin/bash
for i in $(ip link | grep "state UP" | awk '{ print $2 }') ; do
ip -s link show ${i/:}
done
exit
还有一种方法:
ip addr show | grep "state UP"
下面是一个小脚本,它将显示统计信息,以便您可以验证哪个最活跃:
#!/bin/bash
for i in $(ip link | grep "state UP" | awk '{ print $2 }') ; do
ip -s link show ${i/:}
done
exit
也许这个ip-o链接显示| awk{print$2,$9}'Mike,你在评论中所做的给了我一个所有接口及其状态的列表,这不是你在脚本中所做的?也许这个ip-o链接显示| awk{print$2,$9}'Mike,你在评论中所做的给了我一个所有接口及其状态的列表,这不是脚本中要做的?注意:网络管理器不是所有发行版的标准配置(可能小于1/2)注意:网络管理器不是所有发行版的标准配置(可能小于1/2)如果您有多个活动端口,并且只需要主端口,则可以使用head-1,如果您有多个活动端口,并且只需要主端口shown@MikeQ:非常好:)。。。这就是我们来这里的目的,对吗?:}@米凯克:很好:)。。。这就是我们来这里的目的,对吗?:}