OT: IP-Adressen auflisten und kommasepariert auflisten
Hallo ML, ich brauche mal eure Hilfe. Ich möchte in meinem Netzwerk alle IP-Adressen mal auflisten. Ohne Abfrage ob die Rechner z.Zt. da sind. Das ganze ist ein Class-B Netz. Ich bräuchte ein Ergebnis das wie folgt aussieht: 172.16.1.1,172.16.1.2,172.16.1.3,172.16.1.4,..... Wie kann ich das denn am elegantesten herstellen? -- Mit freundlichen Grüßen Sebastian Gödecke -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Sebastian Gödecke schrieb:
Hallo ML, ich brauche mal eure Hilfe. Ich möchte in meinem Netzwerk alle IP-Adressen mal auflisten. Ohne Abfrage ob die Rechner z.Zt. da sind. Das ganze ist ein Class-B Netz. Ich bräuchte ein Ergebnis das wie folgt aussieht: 172.16.1.1,172.16.1.2,172.16.1.3,172.16.1.4,..... Wie kann ich das denn am elegantesten herstellen?
Hi, eine Zeile: ---------8<------------- for N in `seq 1 252`; do echo -n "172.16.1."$N","; done; echo "172.16.1.253" > dateiname.csv ---------8<------------- -- Gruss Bernd -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Bernd Obermayr [22.07.2014 11:16]:
Sebastian Gödecke schrieb:
Hallo ML, ich brauche mal eure Hilfe. Ich möchte in meinem Netzwerk alle IP-Adressen mal auflisten. Ohne Abfrage ob die Rechner z.Zt. da sind. Das ganze ist ein Class-B Netz. Ich bräuchte ein Ergebnis das wie folgt aussieht: 172.16.1.1,172.16.1.2,172.16.1.3,172.16.1.4,..... Wie kann ich das denn am elegantesten herstellen?
Hi, eine Zeile: ---------8<------------- for N in `seq 1 252`; do echo -n "172.16.1."$N","; done; echo "172.16.1.253" > dateiname.csv ---------8<-------------
Naja, Class B ist etwas größer :-) Als Script: for S in $(seq 1 255); do for N in $(seq 1 254); do [ $S -ne 255 ] && \ echo -n "172.16.${S}.${N}," >> dateiname.csv [ $S -eq 255 -a $N -lt 254 ] && \ echo -n "172.16.${S}.${N}," >> dateiname.csv [ $S -eq 255 -a $N -eq 254 ] && \ echo "172.16.${S}.${N}," >> dateiname.csv done done --
Am 22. Juli 2014 11:38 schrieb Werner Flamme <werner.flamme@ufz.de>:
Bernd Obermayr [22.07.2014 11:16]:
Sebastian Gödecke schrieb:
Hallo ML, ich brauche mal eure Hilfe. Ich möchte in meinem Netzwerk alle IP-Adressen mal auflisten. Ohne Abfrage ob die Rechner z.Zt. da sind. Das ganze ist ein Class-B Netz. Ich bräuchte ein Ergebnis das wie folgt aussieht: 172.16.1.1,172.16.1.2,172.16.1.3,172.16.1.4,..... Wie kann ich das denn am elegantesten herstellen?
Hi, eine Zeile: ---------8<------------- for N in `seq 1 252`; do echo -n "172.16.1."$N","; done; echo "172.16.1.253" > dateiname.csv ---------8<-------------
Naja, Class B ist etwas größer :-)
Als Script:
for S in $(seq 1 255); do for N in $(seq 1 254); do [ $S -ne 255 ] && \ echo -n "172.16.${S}.${N}," >> dateiname.csv [ $S -eq 255 -a $N -lt 254 ] && \ echo -n "172.16.${S}.${N}," >> dateiname.csv [ $S -eq 255 -a $N -eq 254 ] && \ echo "172.16.${S}.${N}," >> dateiname.csv done done
--
Das hat geklappt. Danke. -- Mit freundlichen Grüßen Sebastian Gödecke -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (3)
-
Bernd Obermayr
-
Sebastian Gödecke
-
Werner Flamme