Sto usando il seguente codice per ottenere l'indirizzo MAC di eth0 in una variabile da utilizzare in un nome file, ma raramente ogni lavoro . Non è che non funzioni MAI, è solo imprevedibile.Sto cercando di ottenere l'indirizzo MAC come variabile in Linux, ma funziona raramente
ntpdate -b 0.centos.pool.ntp.org
DATE=$(date +%s)
MAC=$(ifconfig eth0 | grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}' | sed 's/://g')
cp logfile logfilecp-$MAC-$DATE
Ora, sembra funzionare meno frequentemente se io uso la linea ntpdate, ma a prescindere, è del tutto imprevedibile. Qualcuno ha qualche idea su cosa potrei fare per migliorare questo lavoro? Io alla fine con un nome di file come
logfile--1375195808.bz2
Nuove info
Ho la messa a punto di script per l'esecuzione come un cronjob (crontab -e). Ho notato che quando viene eseguito come un cronjob, non ottiene il MAC, ma quando lo eseguo manualmente ./runscript.bash ottiene il MAC. Spero che qualcuno sappia perché questo potrebbe causarlo.
Grazie.
attento a quello. potresti anche acquisire indirizzi IPv6. dovresti filtrare ulteriormente cercando 'HWaddr' –
Quando fallisce, cosa mostra' ifconfig eth0'? – Barmar
ifconfig shows sembra buono, mostra l'indirizzo MAC. Ho appena notato qualcosa di nuovo, l'ho aggiunto al post principale. – McB