主机论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 319|回复: 8

求一个shell脚本获取网卡mac地址

[复制链接]

205

主题

1808

帖子

4521

积分

论坛元老

Rank: 8Rank: 8

积分
4521
发表于 2022-5-2 03:02:25 | 显示全部楼层 |阅读模式
本帖最后由 KDE 于 2022-5-2 03:03 编辑

网卡可能叫enp3s0 enp3 enp166
只有一块网卡

DD 系统后需要设置 IP 地址 不然不会DHCP获取任何地址
搞来设置 ubuntu 的 dhcp 或者静态地址

#!/bin/sh -e
# rc.local

ssh-keygen -A

sleep 1m

$MACADDR=获取网卡MAC地址的代码

cat <<EOF> /etc/netplan/config.yaml
network:
    version: 2
    renderer: networkd
    ethernets:
        eth0:
            dhcp4: true
            dhcp6: true
            match:
                macaddress: $MACADDR
            set-name: eth0
EOF
netplan apply

exit 0
回复

使用道具 举报

269

主题

2万

帖子

4万

积分

论坛元老

Rank: 8Rank: 8

积分
48447
发表于 2022-5-2 03:08:50 | 显示全部楼层
一般不是有个 lo 的网卡吗?
回复

使用道具 举报

269

主题

2万

帖子

4万

积分

论坛元老

Rank: 8Rank: 8

积分
48447
发表于 2022-5-2 03:13:53 | 显示全部楼层
本帖最后由 zxxx 于 2022-5-2 03:15 编辑

Debian
  1. MACADDR=`cat /sys/class/net/$(ip route show default | awk '/default/ {print $5}')/address`

  2. echo $MACADDR
  3. 02:00:11:00:11:11
复制代码



回复

使用道具 举报

214

主题

991

帖子

2866

积分

金牌会员

Rank: 6Rank: 6

积分
2866
发表于 2022-5-2 03:26:52 | 显示全部楼层
root@VM-0-8-debian:~# ip addr|grep ether|awk -F "[ ]+" '{print $3}'|sed 's/\://g'

如果保留冒号
root@VM-0-8-debian:~# ip addr|grep ether|awk -F "[ ]+" '{print $3}'

需要过滤网卡,多网卡会有多个mac
回复

使用道具 举报

205

主题

1808

帖子

4521

积分

论坛元老

Rank: 8Rank: 8

积分
4521
 楼主| 发表于 2022-5-2 03:32:01 | 显示全部楼层

rhel9 ubuntu2204 有效!感谢。
回复

使用道具 举报

205

主题

1808

帖子

4521

积分

论坛元老

Rank: 8Rank: 8

积分
4521
 楼主| 发表于 2022-5-2 03:13:00 | 显示全部楼层
rogerskys 发表于 2022-5-2 03:26
root@VM-0-8-debian:~# ip addr|grep ether|awk -F "[ ]+" '{print $3}'|sed 's/\://g'

如果保留冒号

全都有效,大佬厉害了!
回复

使用道具 举报

205

主题

1808

帖子

4521

积分

论坛元老

Rank: 8Rank: 8

积分
4521
 楼主| 发表于 2022-5-2 03:36:41 | 显示全部楼层
rogerskys 发表于 2022-5-2 03:26
root@VM-0-8-debian:~# ip addr|grep ether|awk -F "[ ]+" '{print $3}'|sed 's/\://g'

如果保留冒号

$MACADDR=ip addr|grep ether|awk -F "[ ]+" '{print $3}'
echo $MACADDR

大佬请问下怎么赋予变量?
刚才我加() ""都提示错误
回复

使用道具 举报

205

主题

1808

帖子

4521

积分

论坛元老

Rank: 8Rank: 8

积分
4521
 楼主| 发表于 2022-5-2 03:26:00 | 显示全部楼层
MYMAC=`ip add | grep link/ether | awk '{print $2}'`
echo $MYMAC
回复

使用道具 举报

214

主题

991

帖子

2866

积分

金牌会员

Rank: 6Rank: 6

积分
2866
发表于 2022-5-2 03:46:24 | 显示全部楼层
KDE 发表于 2022-5-2 03:51
MYMAC=`ip add | grep link/ether | awk '{print $2}'`
echo $MYMAC

加上反引号就可以了,A=`echo "123"` 会先执行反引号里面的命令
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|主机论坛

GMT+8, 2024-4-23 21:57 , Processed in 0.087744 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表