einmaliges Kopieren von Dateien auf Client
Hallo,
Meine Netzwerkerfahrungen halten sich in engen Grenzen und nun stehe ich vor
folgendem Problem.
Ich brauche ein Login-Script, das beim erstmaligen Anmelden eines Nutzers (keine
Adminrechte) an einem Client zwei Dateien vom Server auf den Client kopiert und ein
weiteres Script (eine der zu kopierenden Dateien) startet. Dieser Vorgang ist wie
gesagt einmalig und soll nicht wiederholt werden. Der Zielordner existiert noch
nicht. Die Nutzer gehören alle zu einer OU in der Active Directory.
Das Kopieren funktioniert mit xcopy, soweit bin ich schon. Als erstes Ordner
freigeben und dann xcopy \\server\freigegebener Ordner\datei C:\Zielordner.
Mir macht die Einmaligkeit des Vorgangs Probleme.
Server: Windows 2003 Server
Clients: Windows XP Pro SP2
Vielen Dank für Eure Hilfe
Steve
Meine Netzwerkerfahrungen halten sich in engen Grenzen und nun stehe ich vor
folgendem Problem.
Ich brauche ein Login-Script, das beim erstmaligen Anmelden eines Nutzers (keine
Adminrechte) an einem Client zwei Dateien vom Server auf den Client kopiert und ein
weiteres Script (eine der zu kopierenden Dateien) startet. Dieser Vorgang ist wie
gesagt einmalig und soll nicht wiederholt werden. Der Zielordner existiert noch
nicht. Die Nutzer gehören alle zu einer OU in der Active Directory.
Das Kopieren funktioniert mit xcopy, soweit bin ich schon. Als erstes Ordner
freigeben und dann xcopy \\server\freigegebener Ordner\datei C:\Zielordner.
Mir macht die Einmaligkeit des Vorgangs Probleme.
Server: Windows 2003 Server
Clients: Windows XP Pro SP2
Vielen Dank für Eure Hilfe
Steve
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 44795
Url: https://administrator.de/forum/einmaliges-kopieren-von-dateien-auf-client-44795.html
Ausgedruckt am: 22.04.2025 um 10:04 Uhr
3 Kommentare
Neuester Kommentar
Hallo,
damit müsste es gehen (der Dateiname sollte mit .bat oder .cmd enden):
"@echo off" schaltet erstmal die Ausgaben aus.
Dann wird mit dem Server verbunden.
Nun wird überprüft, ob die datei1.txt vorhanden ist. Wenn ja, wird zur Sprungmarke DATEI2 gesprungen. Andernfalls wird die Datei kopiert.
Nun kommt so oder so die Sprungmarke DATEI2. Hier wird abgefragt, ob die Datei2.exe vorhanden ist. Wenn nicht, wird sie kopiert.
Dannach oder sonst wird die Datei gestartet.
Diese obrige Datei kannst du bei dem Nutzer, bei dem sie ausgeführt wird einfach als Login-Script eintrage. Wenn du nicht weißt, wies geht, einfach melden (oder Suchfunkton nurtzen
).
Hoffentlich funktionierts,
Nottrott
damit müsste es gehen (der Dateiname sollte mit .bat oder .cmd enden):
@echo off
net use x: \\server\freigabe
if exist C:\datei1.txt goto DATEI2
copy X:\ordner\datei1.txt C:\
:DATEI2
if exist C:\datei2.exe goto STARTEN
copy X:\ordner\datei2.exe C:\
:STARTEN
C:\datei2.exe
"@echo off" schaltet erstmal die Ausgaben aus.
Dann wird mit dem Server verbunden.
Nun wird überprüft, ob die datei1.txt vorhanden ist. Wenn ja, wird zur Sprungmarke DATEI2 gesprungen. Andernfalls wird die Datei kopiert.
Nun kommt so oder so die Sprungmarke DATEI2. Hier wird abgefragt, ob die Datei2.exe vorhanden ist. Wenn nicht, wird sie kopiert.
Dannach oder sonst wird die Datei gestartet.
Diese obrige Datei kannst du bei dem Nutzer, bei dem sie ausgeführt wird einfach als Login-Script eintrage. Wenn du nicht weißt, wies geht, einfach melden (oder Suchfunkton nurtzen
Hoffentlich funktionierts,
Nottrott
Moin r6cdr,
ich würde noch zu Nottrotts Strategie eine kleine Korrektur vorschlagen.
Diese Flag-Datei(en), an der/denen Du erkennst, ob die Kopier/Skriptstart-Aktion gelaufen ist, sollten nicht auf dem Client, sondern auf dem Server sein.
Wenn das rechtemäßig vertretbar ist (es muss halt in irgendeinem Server-Verzeichnis das Schreibrecht vorhanden sein).
Dann können alle User bzw. alle Computer überprüfen, ob sie sich schon in der Datei "CopyDone.log" bzw. in der Datei "SkriptRun.log" verewigt haben.
Ob Du auf %computername% oder auf %username% prüfen musst, hängt davon ab, ob das Skript einmalig je Rechner oder je Benutzer laufen soll.
Gruß
Biber
ich würde noch zu Nottrotts Strategie eine kleine Korrektur vorschlagen.
Diese Flag-Datei(en), an der/denen Du erkennst, ob die Kopier/Skriptstart-Aktion gelaufen ist, sollten nicht auf dem Client, sondern auf dem Server sein.
Wenn das rechtemäßig vertretbar ist (es muss halt in irgendeinem Server-Verzeichnis das Schreibrecht vorhanden sein).
Dann können alle User bzw. alle Computer überprüfen, ob sie sich schon in der Datei "CopyDone.log" bzw. in der Datei "SkriptRun.log" verewigt haben.
...
Find "%computername" \\derServer\dieFreigabe\CopyDone.log && goto CheckIfSkriptHadRun
...xcopy ...vomServer ...aufClient...
If Errorlevel 0 echo %date% %time% %computername% %username% Dateien abgeholt...>>\\derServer\dieFreigabe\CopyDone.log
:CheckIfSkriptHadRun
Find "%computername" \\derServer\dieFreigabe\SkriptRun.log && goto :eof
.....skript starten...
If Errorlevel 0 echo %date% %time% %computername% %username% Skript gestartet...>>\\derServer\dieFreigabe\SkriptRun.log
...
Ob Du auf %computername% oder auf %username% prüfen musst, hängt davon ab, ob das Skript einmalig je Rechner oder je Benutzer laufen soll.
Gruß
Biber