IP-Adressen aus File auslesen und einfügen in script?
Hallo Community,
Ich arbeite zurzeit an einem kleinem script, welches die Aufgabe übernimmt alle Drucker in der Firma abzufragen und den derzeitigen Counter auszugeben.
Es sieht wie folgt aus:
COUNTER01="`snmpwalk 10.97.1.203 -c zfs -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo BCN_PRU40003 $COUNTER01`"
COUNTER02="`snmpwalk 10.92.2.202 -c public -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo BLQ_PRU20006 $COUNTER02`"
COUNTER03="`snmpwalk 10.97.1.203 -c public -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo BLQ_PRU20015 $COUNTER03`"
COUNTER04="`snmpwalk 10.90.11.213 -c public -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo DUS_PRU10002 $COUNTER04`"
usw usw...
Da ihr wisst ist ein Administrator ein fauler Mensch also möchte ich, dass die statt dem SNMPWALK "IP" die IP aus einer Datei gelesen werden und an diese stelle eingesetzt wird.
Eben so wie der NAME z.B BLQ_PRU20006
also file sieht dann in etwa so aus:
10.97.1.203
10.92.2.202
10.97.1.203
10.90.11.213
wie muss ich das script jetzt umbauen damit er sich die IP-adressen nacheinander ins script reinzieht.
Danke im vorraus =)
ps: bin neuling in der Geschichte
Ich arbeite zurzeit an einem kleinem script, welches die Aufgabe übernimmt alle Drucker in der Firma abzufragen und den derzeitigen Counter auszugeben.
Es sieht wie folgt aus:
COUNTER01="`snmpwalk 10.97.1.203 -c zfs -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo BCN_PRU40003 $COUNTER01`"
COUNTER02="`snmpwalk 10.92.2.202 -c public -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo BLQ_PRU20006 $COUNTER02`"
COUNTER03="`snmpwalk 10.97.1.203 -c public -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo BLQ_PRU20015 $COUNTER03`"
COUNTER04="`snmpwalk 10.90.11.213 -c public -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo DUS_PRU10002 $COUNTER04`"
usw usw...
Da ihr wisst ist ein Administrator ein fauler Mensch also möchte ich, dass die statt dem SNMPWALK "IP" die IP aus einer Datei gelesen werden und an diese stelle eingesetzt wird.
Eben so wie der NAME z.B BLQ_PRU20006
also file sieht dann in etwa so aus:
10.97.1.203
10.92.2.202
10.97.1.203
10.90.11.213
wie muss ich das script jetzt umbauen damit er sich die IP-adressen nacheinander ins script reinzieht.
Danke im vorraus =)
ps: bin neuling in der Geschichte
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 97925
Url: https://administrator.de/contentid/97925
Ausgedruckt am: 26.11.2024 um 09:11 Uhr
5 Kommentare
Neuester Kommentar
Nabend
for ip in $(cat ip_file)
do
COUNTER="`snmpwalk ${ip} -c zfs -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo ${ip} hat zaehlerstand $COUNTER`"
done
MfG
for ip in $(cat ip_file)
do
COUNTER="`snmpwalk ${ip} -c zfs -v1 -Ov 1.3.6.1.2.1.43.10.2.1.4.1.1`"
echo "`echo ${ip} hat zaehlerstand $COUNTER`"
done
MfG
Zitat von @Pendzi:
Viel Dank! Du hast mir sehr geholfen, läuft soweit anwandfrei,
jetzt hab ich noch ne frage und zwar, klar läuft alles und alles
supi nur ich steig nicht so ganz hinter die logik, wie gesagt ich
solls "irgendwann" dann auch mal aus dem ff beherschen, also
muss ich hinterfragen wie sowas funktionieren kann =)
Bitte, bitteViel Dank! Du hast mir sehr geholfen, läuft soweit anwandfrei,
jetzt hab ich noch ne frage und zwar, klar läuft alles und alles
supi nur ich steig nicht so ganz hinter die logik, wie gesagt ich
solls "irgendwann" dann auch mal aus dem ff beherschen, also
muss ich hinterfragen wie sowas funktionieren kann =)
die logik von schleifen ist dir hoffentlich bewusst, ansonsten wikipedia
for ip in $(cat ip_file)
öffnen des ip-files??
für jede zeile die `cat ip_file` zurückliefertöffnen des ip-files??
do was sagt das aus??
COUNTER="`snmpwalk ${ip} -c zfs -v1 -Ov
1.3.6.1.2.1.43.10.2.1.4.1.1`"
snmpwalk auf die erste ip adresse??? Geht das von oben nach
unten???
echo "`echo ${ip} hat zaehlerstand $COUNTER`"ausgabe auf dem bildschirm, ip wieder von oben nach unten? und
counter ist in dem fall der snmpwalk, richtig??
done
//fertig?
mfg
Zitat von @Pendzi:
eine frage noch ;), du sagst
nimm den wert der in $ip steht und mache ein snmpwalk
in $ip steht ja aber kein wert^^,
in der datei stehen nur IP´s untereinander ausgeführt
woher weiß er das er genau die
IP dort bei $ip einsetzen soll ;)
eine frage noch ;), du sagst
nimm den wert der in $ip steht und mache ein snmpwalk
in $ip steht ja aber kein wert^^,
in der datei stehen nur IP´s untereinander ausgeführt
woher weiß er das er genau die
IP dort bei $ip einsetzen soll ;)
for ip in $(cat ip_file)
do
...
done
cat'te das file und nimm jede zeile einzeln, schreibe dabei den aktuellen wert in ip und verwende dies als variable $ip, mache dann ... fertig
Danke ich makiere das ganze schonmal als gelöst du bist mein
held :=
held :=
Juhu wennigsten ein Fan