Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Software an Rechner in IP range verteilen per batch

Frage Entwicklung Batch & Shell

Mitglied: Steff221

Steff221 (Level 1) - Jetzt verbinden

21.01.2010 um 12:04 Uhr, 5048 Aufrufe, 15 Kommentare

Hallo zusammen,

ich benötige eure Hilfe bei einem Batch Skript. Das ganze ist als einfache "kopier" Aufgabe gestartet und nimmt jetzt immer wildere Ausmaße an.
Im Endeffekt soll ein kleines Tool auf eine Gruppe von Rechner im Netzwerk verteilt werden.
Die Hostnamen bzw. die IP´s sind nicht bekannt bzw. bekommen die Rechner ihre IP per DHCP und da nicht immer alle Rechner online sind, müsste erst geprüft werden ob der jeweilige Rechner auch am Netz hängt .
Mein gedachter Ablauf sollte wie folgt aussehen:

-prüfen ob rechner im Netz hängen
-hängt rechner im Netz soll geprüft werden ob bestimmtes Verzeichnis vorhanden
-ist bestimmtes Verzeichnis vorhanden = exit
-Verzeichnis nicht vorhanden = kopiere Verzeichnis von share


Dazu kommt das ich eigentlich gar keine Ahnung von der Materie habe, habe mich jetzt einige Zeit damit beschäftigt und einige Lösungsansatze gefunden, allerdings weiß ich diese Ansätze nicht mit einander zu kombinieren.

mit der folgenen Schleife habe ich es geschafft das Netz zu scannen

FOR /L %i IN (1,1,254) DO ping -n 1 192.168.0.%i

kann ich hier mit error Leveln arbeiten ? Sprich:

if error 0 goto copy
:copy
if not exist "c:\programme\Verzeichnis" DO net use x: \\192.168.0.2\balabal\Verzeichnis
copy x:\192.168.0.2\balabal\Verzeichnis c:\programme\

und wie schaffe ich es das er dies auf jede gefundene IP in diesem range ausführt.


Das wäre der erste wichtig Punkt für mich, läßt sich das so bzw. so ähnlich realisieren ?

Richtig nett wäre noch eine zusätzliche Funktion. Wenn man das Skript startet soll ein prompt erscheinen in dem man den IP Bereich bzw. die start und end ip eingeben kann.
Etwa so :

@ECHO off
SET /p sub=IP-Bereich eingeben: 195.190
SET /p a=Start-IP eingeben: 195.190%sub%.
SET /p b=End-IP eingeben: 195.190%sub%.

ECHO Pinge IPs von 195.190%sub%.%a% bis 195.190%sub%.%b%

FOR /L %%i IN (%%a 1 %%b) DO ping -n 1 195.190%sub%.%%i

geht aber auch nich so richtig. ist aber auch nur ein netter zusatz, wichtig wäre der erste teil.

Komme einfach nicht weiter, google und board suche haben mir auch nicht wirklich geholfen, daraus habe ich meine Ansätze bekommen, die es halt noch zu korrigieren bzw. kombinieren gilt.


Bin für jede Hilfe dankbar !!!
Mitglied: fritzo
21.01.2010 um 12:45 Uhr
01.
@ECHO OFF 
02.
 
03.
set /P subnetz=Bitte geben Sie ein Subnetz ein:  
04.
set /P ipstart=Bitte geben Sie die Start-IP ein:  
05.
set /P ipende=Bitte geben Sie die End-IP ein:  
06.
 
07.
@echo. 
08.
@echo Angegebenes Subnetz: %subnetz% 
09.
@echo. 
10.
FOR /L %%i IN (%ipstart%,1,%ipende%) DO @ping -n 1 %subnetz%.%%i|find /i "Antwort" >nul && ( 
11.
@echo %subnetz%.%%i online, kopiere.. 
12.
@xcopy /E /T \\192.168.0.2\balabal\Verzeichnis \\%subnetz%.%%i\c$\programme\Verzeichnis\ 
13.
) || ( 
14.
@echo %subnetz%.%%i offline 
15.
16.
 
Bitte warten ..
Mitglied: miniversum
21.01.2010 um 12:46 Uhr
Mal ungetestet kannst du es mal damit versuchen:
01.
@echo off 
02.
SET /p sub=IP-Bereich eingeben: 195.190. 
03.
SET /p a=Start-IP eingeben: 195.190.%sub%. 
04.
SET /p b=End-IP eingeben: 195.190.%sub%. 
05.
 
06.
ECHO Pinge IPs von 195.190.%sub%.%a% bis 195.190.%sub%.%b% 
07.
FOR /L %%i IN (%a%,1,%b%) DO ping -n 1 195.190.%sub%.%%i>NUL && goto:copy %%i 
08.
goto:eof 
09.
 
10.
:copy 
11.
set IP=195.190.%sub%.%1 
12.
echo erreichbar: %IP% 
13.
if not exist "c:\programme\Verzeichnis" DO net use x: \\192.168.0.2\balabal\Verzeichnis 
14.
copy x:\192.168.0.2\balabal\Verzeichnis c:\programme\
Den genauen copy must du mal selbst rausfinden
Bitte warten ..
Mitglied: 60730
21.01.2010 um 12:52 Uhr
Zitat von Steff221:
Hallo zusammen,

Mein gedachter Ablauf sollte wie folgt aussehen:

-prüfen ob rechner im Netz hängen
-hängt rechner im Netz soll geprüft werden ob bestimmtes Verzeichnis vorhanden
-ist bestimmtes Verzeichnis vorhanden = exit
-Verzeichnis nicht vorhanden = kopiere Verzeichnis von share

Im Prinzip fehlt dir doch als nachfolger vom 3. Schritt -> Wenn vorhanden - trage den Zustand in ein Logfile ein - bzw trage den Rechner aus der Liste - der noch zu verteilenden aus.

Da das ganze aber ein arg krummer Weg ist - empfehle ich dir - lass es.

Sinnvoller ist das nutzen der Computerstartupscripte - denn dann werden die Rechner schon beim hochfahren - vorm anmelden des users mit dem Ordner beschickt und nicht erst dann, wenn du deine Batch losläßt.
Ps: Immer wieder gerne genommen - bei deinem Weg kann es dir passieren, dass der User den rechner während des kopierens herunterfährt - ergo der Ordner zwar angelegt ist - aber evtl. nur halb gefüllt.

Gruß
Bitte warten ..
Mitglied: Tommy70
21.01.2010 um 13:05 Uhr
Oder du siehst dir mal das an.
Dieses Script prüft alle Rechner in der Domäne auf Erreichbarkeit. Da fällt dann das Scannen weg.
Bitte warten ..
Mitglied: Steff221
21.01.2010 um 13:06 Uhr
Wow , das ist ja mal fix , vielen Dank für die schnelle Hilfe !!!
Werde es direkt testen und dann mein feedback posten.

nochmal vielen Dank !!!!
Bitte warten ..
Mitglied: Steff221
21.01.2010 um 14:37 Uhr
geht leider noch nicht so ganz ..
was ich vergessen habe ist die authentifizierung ....müsste doch sowas wie einen global account haben um das verzeichnis auf die rechner zu kopieren, oder sehe ich das falsch.

das würde auch das scheitern des skripts direkt am anfang erklären, sieht so aus als würde er direkt beim scannen scheitern, fehler oder so gibbet nich
Bitte warten ..
Mitglied: 60730
21.01.2010 um 14:43 Uhr
Servus,

nochmal der Hinweis auf die Computerstartupscripte.

Psinfo ist wie fast alle Sysinternal Tools mit [-u Username] [-p Password] aufrufbar.

  • Ein irgendeine.exe /? hilft fast immer und wenn nicht - dann irgendeine.exe --help

Gruß
Bitte warten ..
Mitglied: fritzo
21.01.2010 um 15:00 Uhr
Bezogen auf mein Batch oben:

speicher das Batch als CopyBalabal.cmd ab und ruf es in einer Dosbox zusammen mit dem Befehl "runas" auf. Dieser Befehl ermöglicht, eine andere Benutzerkennung beim Aufruf zu verwenden.

01.
runas /noprofile /user:<Benutzername> CopyBalabal.cmd
Du kannst das Script auch als geplanten Task ausführen lassen, was sich besonders dann anbietet, wenn es unbeaufsichtigt und/oder mehrmals ausgeführt werden soll. Hierzu erstellst Du einen geplanten Task, dem Du dann die Benutzerkennung und das Passwort mitgibst. Der Task wird anschließend zur angegebenen Zeit unter der angegebenen Benutzerkennung automatisch ausgeführt.

Gruß,
fritzo
Bitte warten ..
Mitglied: Steff221
21.01.2010 um 15:29 Uhr
erstmal danke für die schnellen Antworten !

@fritzo

wenn ich das skript ausführe werde ich im 1. schritt aufgefordert das subnet einzugeben
in meinem fall : 255.255.255.128
start IP : 195.190.0.1
end IP :195.190.0.240

danach erscheint :

255.255.255.128.195 offline

danach abbruch


sorry für die ständigen nachfragen
Bitte warten ..
Mitglied: 60730
21.01.2010 um 15:41 Uhr
Zitat von Steff221:
sorry für die ständigen nachfragen

Salü,

Gegenfrage(n) meinerseits:

  • wie bekommst du heraus, wann du das Script nicht mehr laufen lassen mußt, weil alle Rechner den Ordner bereits erhalten haben
  • Was spricht gegen die von mir bereits 2* gepostete Lösung?

Gruß
jaja ich halt mich ja schon raus - interessiert mich aber, warum um Inris Vater willen - die schlechte Lösung den Vorzug erhält.
Bitte warten ..
Mitglied: fritzo
21.01.2010 um 15:50 Uhr
:D

Simples Mißverständnis. "Subnetz" bezeichnet hier die ersten drei Okette des abzufragenden Subnetzes und die IP-Adressen das letzte Oktett.

Gib nach Start des Scripts folgendes ein:

Subnetz: 195.190.0
Start-IP: 1
End-IP: 240


Ansonsten tendiere ich dazu, die Meinung unseres verehrten Doc House aka Timo mitzuvertreten. Das Batch hier eignet sich für eine AdHoc-Verteilung auf wenige Rechner, zB für Nacharbeiten nach einer Verteilung. Wenn Du sicherstellen willst, daß Software turnusmässig verteilt wird und das ganze auch per Log o.ä. nachvollziehbar sein soll, dann würde ich es definitiv auch eher über ein Startscript umsetzen; es ist einfach sicherer so. Falls Eure Umgebung größer sein sollte, dann solltet Ihr langfristig auch über ein Softwareverteilungs-Tool wie SMS o.ä. nachdenken.

Gruß,
fritzo
Bitte warten ..
Mitglied: Steff221
21.01.2010 um 16:23 Uhr
Hi,

dachte mir ich lass das einfach durchlaufen , if exist > weitermachen , if not exist > kopieren .....
das ich damit rechner die nicht "on" sind NICHT abdecke wird mir auch grade bewusst, von da her ist Deine Lösung mit den Start Skripten sicher die besser Variante.
Allerdings haben wir gar keine Dömane ...aller Rechner der Firma befinden sich in einer Arbeitsgruppe .......
Bitte fragt mich nicht wieso, erhalte auf diese Frage von cheffe selbst keine vernüftige Antwort. Weiß nur das bald die neuen Server kommen sollen ....dann soll alles besser werden ......*zwinker*
Von daher werde ich auch an der Lösung von "fritzo" scheitern, da es nur lokale Admins gibt....wie soll ich das packet ohne entsprechende rechte verteilen ........

werde wohl erstmal ein paar grundsätzliche probleme hier beseitigen müssen, dann nochmal genauere gedanken über das skript machen, ein paar FAQ und tutorials lesen und mich dann nochmal hier melden.
Falls noch jemand ne idee hat, immer her damit , wenn nicht auch nicht schlimm , ihr habt mir so schon gewaltig weiter geholfen !!!
Bitte warten ..
Mitglied: fritzo
21.01.2010 um 16:38 Uhr
Hi,

hier eine kurze Auflistung einiger Möglichkeiten, bei Benutzeranmeldung oder Computerstart Scripts oder andere Binaries ausführen zu lassen. Kein Anspruch auf Vollständigkeit, es gibt noch viel mehr Möglichkeiten.

1. usrlogon.cmd
Das Batchfile C:\windows\system32\usrlogon.cmd wird bei jeder Benutzeranmeldung ausgeführt. Hierüber lässt sich ein weiteres Script starten, zB ein Logonscript.

2. HKCU - Runkey
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
Einträge in diesem Key werden bei jeder Benutzeranmeldung im Benutzerkontext ausgeführt.

3. HKLM - Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Einträge in diesem Key werden bei jedem Rechnerstart ausgeführt - eignet sich für computerbasierte Startscripts

4. HKLM - RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
Einträge in diesem Key werden beim nächsten Rechnerstart einmalig ausgeführt - eignet sich für einmalige Aktionen

Ansonsten kannst Du, sofern eine Domäne vorhanden ist (habt Ihr ja evtl. irgendwann) eine Gruppenrichtlinie erstellen und dort Logonscripts für den Rechnerstart und/oder die Benutzeranmeldung definieren. Das ist die eleganteste Möglichkeit, die aber nur bei Verwendung einer Domäne zur Verfügung steht. Falls Dir das nicht geläufig sein sollte, schau Dir am besten www.gruppenrichtlinien.de an. Das ist, was Timo mit "Computerstartupscripte" meint (falls ich mich irre - ignore or flame)

Gruß,
fritzo
Bitte warten ..
Mitglied: fritzo
21.01.2010 um 16:45 Uhr
Nochwas - falls Deinem Chef eine Windows-Serverlizenz zu teuer sein sollte, tut es vielleicht zur Not ja auch ein Samba-Server - mit dem lässt sich ein Domänencontroller nachbilden und man hat auch zentrale File/Druckdienste.

hth,
fritzo
Bitte warten ..
Mitglied: Steff221
21.01.2010 um 17:02 Uhr
Hey,

wow, das sind auf jeden fall eine Menge hilfreicher Infos !!!
Denke hiermit wird sich auf jeden Fall früher oder später ein Erfolg einstellen.

@fritzo
mit den korrigierten Eingaben, geht es soweit das er scannt und versucht den kopier vorgang zu starten

Damit habe ich auf jeden Fall schonmal eine gute basis, alles weitere dann wenn hier Infrastruktur mäßig erweitert wurde.

Nochmals vielen vielen Dank für eure Zeit und Unterstützung !!!!!!

steff
Bitte warten ..
Ähnliche Inhalte
LAN, WAN, Wireless
Switch mit eigener IP Range
gelöst Frage von Heinz189LAN, WAN, Wireless8 Kommentare

Hallo zusammen, ich habe ein wenig Schwierigkeiten mit dem Aufbau eines Netzwerks und würde mich freuen, wenn Ihr mir ...

Microsoft Office
ACCESS Prüfen ob IP Adresse in IP Range vorhanden
gelöst Frage von thomas1972Microsoft Office6 Kommentare

Hallo, ich habe in Access eine Tabelle IPRANGE mit folgendem Inhalt IPADDR MASK 192.168.1.1 26 besteht die Möglichkeit über ...

Windows Server
Software verteilen mit WSUS
Frage von Thor01Windows Server8 Kommentare

Hallo, ich möchte Software mit WSUS verteilen. Bin gerade dabei mir "LUP" anzusehen. Ist LUP das Maß der Dinge ...

Windows Installation
Software um Windows Images zu verteilen
Frage von AndroxinWindows Installation8 Kommentare

Moin, ich stehe demnächst vor der Aufgabe, ca. 500 baugleiche PCs in kürzester Zeit mit exakt der selben Konfiguration ...

Neue Wissensbeiträge
Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 4 StundenInternet3 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registierunf von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Verschlüsselung & Zertifikate

19 Jahre alter Angriff auf TLS funktioniert immer noch

Information von BassFishFox vor 11 StundenVerschlüsselung & Zertifikate1 Kommentar

Interessant zu lesen. Der Bleichenbacher-Angriff gilt unter Kryptographen als Klassiker, trotzdem funktioniert er oft noch. Wie wir herausgefunden haben, ...

Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 22 StundenWindows 103 Kommentare

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 23 StundenSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

Netzwerkmanagement
NAS über zwei weitere Ethernet Anschlüsse verbinden
gelöst Frage von Sibelius001Netzwerkmanagement16 Kommentare

Sorry - ich bin hier wahrscheinlich als kompetter IT Trottel unterwegs. Aber eventuell kann mir jemand ganz einfach helfen: ...

LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless16 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...