• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

DHCP script

iea

Member
Hi,

wie kann ich es am besten realisieren das mein DHCP Server nur MAC Adressen zulässt die einen Ordner besitzen.

Also das Script hab ich schon:

Code:
#!/bin/bash

      sed 's/:/-/g' </etc/mac.conf> /etc/mac2.conf

cat -u /etc/mac2.conf | while
	read line
do
        

if [ -d /mac/$line ] 

then 
  

echo "$line" | awk -F":" '{print $6} =irgendiwe in $ID

// Das an nach einer bestimmten Stelle einfügen z.B. #insert after    
   echo  "host host$ID { hardware ethernet xx:xx:xx:xx:xx:xx;}" >> /etc/dhcpd.conf
      
       rcdhcpd restart

fi


done;

Das problem ist jetzt wie kann ich eine Zeile an einer bestimmten Stelle in die DHCPD.CONF hinzufügen, ersetzen geht nicht da auch mehrere MAC eingetragen werden müssten.

Und wie könnte ich diese Zeile in eine Variable schreiben
echo "$line" | awk -F":" '{print $6}

Danke
 
OP
iea

iea

Member
Die Lösung für das erste Problem habe ich nur wie kann ich

echo "xx:xx:xx:xx:xx:xx" | awk -F":" '{print $6}

das in eine Variable speichern?

var="echo "xx:xx:xx:xx:xx:xx" | awk -F":" '{print $6}"
funktioniert nicht, die Variable belibt leer...
 

oc2pus

Ultimate Guru
iea schrieb:
var="echo "xx:xx:xx:xx:xx:xx" | awk -F":" '{print $6}"
funktioniert nicht, die Variable belibt leer...

du brauchst dazu die sogenannten Backtics "`":
Code:
var=`echo "xx:xx:xx:xx:xx:xx" | awk -F":" '{print $6}'`

edit: Korrektur, siehe b3ll3roph0n posting :)
 
Dann aber bitte ohne Anführungszeichen und mit dem abschließenden Hochkomma für awk:
Code:
var=`echo "xx:xx:xx:xx:xx:xx" | awk -F":" '{print $6}'`;
*duck*wegrenn* :wink:
 

oc2pus

Ultimate Guru
b3ll3roph0n schrieb:
Dann aber bitte ohne Anführungszeichen und mit dem abschließenden Hochkomma für awk:
Code:
var=`echo "xx:xx:xx:xx:xx:xx" | awk -F":" '{print $6}'`;
*duck*wegrenn* :wink:

ja, ja, ja .. das kommt davon wenn man etwas kopiert und schlampig arbeitet :)
Aber du hast recht, sonst hagelt es syntax-Fehler bzw es erscheint ein Eingabepromtp ...
 
Oben