MAC 주소를 가져와 HWADDR 뒤의 ifconfig 파일에 붙여넣는 bash 스크립트

MAC 주소를 가져와 HWADDR 뒤의 ifconfig 파일에 붙여넣는 bash 스크립트

파일에서 MAC 주소를 가져와 파일 ifconfig에 추가하는 방법이 있습니까 ? 명령을 사용하여 MAC 주소를 표시했지만 해당 정보를 저장하고 파일 에 붙여넣는 방법을 알 수 없습니다 .HWADDRifconfig-eth0awkifconfig-eth0

답변1

ifconfig의 출력을 구문 분석하는 대신 /sys 데이터의 내용에서만 변수를 설정해야 합니다(기본적으로 설치되지 않을 수도 있음).

MACADDR=$(cat /sys/class/net/eth0/address)

그럼 넌 할 수 있어

echo “HWADDR=$MACADDR” >> /etc/sysconfig/network-scripts/ifcfg-eth0

아직 HWADDR 라인이 없다고 가정합니다. 그렇지 않으면 sed를 사용해야 합니다.

답변2

다음 방법으로 eth0의 MAC 주소를 얻을 수 있습니다.

$ ifconfig eth0 | awk '/ether/ {print $2}'

위치: ifconfig eth0지정된 네트워크 장치만 표시

awk '/ether/ {print $2}'"ether"를 찾아 일치하는 행의 두 번째 열을 인쇄하세요.

--

무엇인가요ifconfig-eth0 파일?

ed: 전자는 $ ifconfig | awk '/^eth0/ {getline;print $2}'실제로 연결되지 않은 eth0에서만 작동하므로 이제 올바른 것이 위에 있습니다.

답변3

다음 명령을 사용해보십시오. 훌륭하게 작동합니다.

k=`ifconfig -a |awk '/HWaddr/{print $NF}'`
sed -i "/HWADDR/s/=.*/=$k/g" /etc/sysconfig/network-scripts/ifcfg-eth0

관련 정보