我知道我可以通过解析以下输出来找到当前正在使用哪个网络接口:
# ifconfig
或者
# route
但作为非 root 用户如何获取这些信息呢?有没有办法我可以建立这样一个
$ magic-command
谁的输出将是none
lo
orwlan0
或eth0
取决于所使用的设备..或者甚至是enp3s0f1
或wlp2s0
在奇异的系统上,没有管理员权限?
答案1
像这样的东西吗?
ip addr | awk '/state UP/ {print $2}'
enp0s3:
此命令是作为“常规”(非root
)用户在以下位置发出的:
uname -a
Linux centos 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
如果从接口名称中删除尾随很重要:
,请使用(例如):
ip addr | awk '/state UP/ {print $2}' | sed 's/.$//'
enp0s3