Dateien im Netz verteilen - unterschiedliche Zielpfade ermitteln
Hallo,
ich muss im Netzwerk 4 Dateien, z.B. Datei1.vbs bis Datei4.vbs, auf etlichen PC verteilen.
Die Dateien liegen lokal unter D:\Zeuss.
Dort liegt auch eine Rechner.txt mit den Rechnernamen, Inhalt z.B.
PC007
PC4711
PC0815
die Namen zeilenweise, keine sonstigen Angaben.
Auf den Fremdrechnern sollen die Dateien in alle Verzeichnisse mit dem Namen Makro. Diese Verzeichnisse gibt es je Rechner öfter, irgendwo als Unterverzeichnisse von D:\Zeuss, z.B.
D:\Zeuss\Orpheus\Makro,
D:\Zeuss\Euridike\Poseidon\Makro usw.
Für feste Verzeichnisse hab ich auch schon was gefunden, aber hier sind die Zielverzeichnisse ja sehr variabel. Auf dem Zielrechner müssen die Verzeichnisse durchsucht werden, damit das klappt ...
Die remoten Rechner kann ich zur not nacheinander manuell mappen, am wichtigsten wäre ein Script / eine Batch, die die 4 Dateien in allen Makro-Verzeichnissen platziert und dabei ggf. vorhandene Dateien gleichen Namens ersetzt.
Danke einstweilen,
ich muss im Netzwerk 4 Dateien, z.B. Datei1.vbs bis Datei4.vbs, auf etlichen PC verteilen.
Die Dateien liegen lokal unter D:\Zeuss.
Dort liegt auch eine Rechner.txt mit den Rechnernamen, Inhalt z.B.
PC007
PC4711
PC0815
die Namen zeilenweise, keine sonstigen Angaben.
Auf den Fremdrechnern sollen die Dateien in alle Verzeichnisse mit dem Namen Makro. Diese Verzeichnisse gibt es je Rechner öfter, irgendwo als Unterverzeichnisse von D:\Zeuss, z.B.
D:\Zeuss\Orpheus\Makro,
D:\Zeuss\Euridike\Poseidon\Makro usw.
Für feste Verzeichnisse hab ich auch schon was gefunden, aber hier sind die Zielverzeichnisse ja sehr variabel. Auf dem Zielrechner müssen die Verzeichnisse durchsucht werden, damit das klappt ...
Die remoten Rechner kann ich zur not nacheinander manuell mappen, am wichtigsten wäre ein Script / eine Batch, die die 4 Dateien in allen Makro-Verzeichnissen platziert und dabei ggf. vorhandene Dateien gleichen Namens ersetzt.
Danke einstweilen,
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 89714
Url: https://administrator.de/contentid/89714
Ausgedruckt am: 22.11.2024 um 19:11 Uhr
11 Kommentare
Neuester Kommentar
salü schauan
hab dir ma folgendes script zusammengeschrieben, welches dir die rechnerliste durchgeht, die rechner automatisch unter dem laufwerk P:\ mappt und dann deine gewünschte prozedur mit dem kopieren durchgeht!
ich hoffe es funktioniert! und niemand soll sich über die struktur des scripts beschweren;)
edit: voraussetzung ist natürlich, dass du auf dem remotepc mit deinem angemoldenen user adminrechte hast!
edit2: grml das da unten lässt mein script wohl ein bisschen aufge.blasen dastehen ...
grüsse tacker
hab dir ma folgendes script zusammengeschrieben, welches dir die rechnerliste durchgeht, die rechner automatisch unter dem laufwerk P:\ mappt und dann deine gewünschte prozedur mit dem kopieren durchgeht!
ich hoffe es funktioniert! und niemand soll sich über die struktur des scripts beschweren;)
dim fso
dim network
set fso = createobject("Scripting.filesystemobject")
set network = createobject("wscript.network")
set pcs = fso.opentextfile("Rechner.txt", 1)
do while not pcs.atendofstream
pcname = pcs.readline()
network.mapnetworkdrive "P:", "\\" & pcname & "\d$\Zeuss", false
set ordner = fso.getfolder("P:\")
for each subfolder in ordner.subfolders
findsubfolder(subfolder.path)
next
network.removenetworkdrive "P:", true, true
loop
function FindSubFolder(ordner)
set folders = fso.getfolder(ordner).subfolders
if right(ordner, 5) = "Makro" then
kopieren(ordner)
end if
for each subfolder in folders
FindSubFolder(subfolder)
Next
End Function
function kopieren(ordner)
fso.copyfile "D:\Zeuss\Datei1.vbs", ordner & "\"
fso.copyfile "D:\Zeuss\Datei2.vbs", ordner & "\"
fso.copyfile "D:\Zeuss\Datei3.vbs", ordner & "\"
fso.copyfile "D:\Zeuss\Datei4.vbs", ordner & "\"
end function
edit: voraussetzung ist natürlich, dass du auf dem remotepc mit deinem angemoldenen user adminrechte hast!
edit2: grml das da unten lässt mein script wohl ein bisschen aufge.blasen dastehen ...
grüsse tacker
Hallo schauan!
Sollte sich eigentlich mit folgendem (ungetesteten) Oneliner (direkt von der Kommandozeile) lösen lassen:
Es wird hier davon ausgegangen, dass die Zielrechner alle erreichbar sind. Durch das "@echo" vor dem "copy" wird der Kopiervorgang zunächst nur simuliert - wenn das Ergebnis vernünftig aussieht, kannst Du es (das "echo" ) einfach weglassen.
Da Du keine besondere Freigabe auf den Zielrechnern erwähnt hast, nehme ich an, dass Du Admin-Rechte hast und daher D$ benutzen kannst.
Falls Du die dargestellte Zeile in einem Batch verwenden willst, jeweils %%i, %%a und %%f schreiben.
Grüße
bastla
[Edit] Berücksichtigung von Einzeldateien "Datei1.vbs" bis "Datei4.vbs" ergänzt. [/Edit]
[Edit2] Unnöttiges Anführungszeichen nach "Datei4.vbs" entfernt. [/Edit]
Sollte sich eigentlich mit folgendem (ungetesteten) Oneliner (direkt von der Kommandozeile) lösen lassen:
for /f "delims=" %i in (D:\Zeuss\rechner.txt) do @for /f "delims=" %a in ('dir /s /b /ad "\\%i\D$\Zeuss\Makro"') do @for %f in (Datei1.vbs Datei2.vbs Datei3.vbs Datei4.vbs) do @echo copy /y "D:\Zeuss\%f" "%a\">nul
Da Du keine besondere Freigabe auf den Zielrechnern erwähnt hast, nehme ich an, dass Du Admin-Rechte hast und daher D$ benutzen kannst.
Falls Du die dargestellte Zeile in einem Batch verwenden willst, jeweils %%i, %%a und %%f schreiben.
Grüße
bastla
[Edit] Berücksichtigung von Einzeldateien "Datei1.vbs" bis "Datei4.vbs" ergänzt. [/Edit]
[Edit2] Unnöttiges Anführungszeichen nach "Datei4.vbs" entfernt. [/Edit]
Hallo schauan!
Da es bei mir (ebenfalls XP) auch (wie es ja eigentlich sein sollte) ohne Stern funktioniert (den bräuchtest Du nur, wenn im Verzeichnisnamen vor "Makro" noch andere Zeichen stünden), kann ich das Problem nicht nachvollziehen - aber da Du ohnehin schon tackers funktionierende Lösung (und einen Workaround für die CMD-Variante ) hast, ist das ja eigentlich nicht weiter wichtig.
Grüße
bastla
Da es bei mir (ebenfalls XP) auch (wie es ja eigentlich sein sollte) ohne Stern funktioniert (den bräuchtest Du nur, wenn im Verzeichnisnamen vor "Makro" noch andere Zeichen stünden), kann ich das Problem nicht nachvollziehen - aber da Du ohnehin schon tackers funktionierende Lösung (und einen Workaround für die CMD-Variante ) hast, ist das ja eigentlich nicht weiter wichtig.
Grüße
bastla