lamerking
Goto Top

Textdatei zeilenweise einlesen

Hallo zusammen,

ich hab folgendes Problem.
Ich will ne Textdatei mit folgendem Format zeilenweise einlesen:

z.B.

PC-204
PC345
NB-03212
nb2043

In nem Script (wenns geht vbs oder evtl. ne normale Batchdatei) soll er die PC-Namen zeilenweise einlesen und dann auf die PCs was kopieren.

Wie krieg das hin, dass in dem Script jede Zeile nimmt und dann nen copy Befehl auf den jeweiligen PC ausführt?

Danke schon mal.

Gruß
Tobias

Content-Key: 44105

Url: https://administrator.de/contentid/44105

Printed on: April 16, 2024 at 06:04 o'clock

Member: Biber
Biber Nov 09, 2006 at 17:22:14 (UTC)
Goto Top
Moin Lamer,

das bekommst Du als Batch mit einer FOR /F..IN..DO-Anweisung hin.
Beispiele zur For/F-Verwendung tonnenweise in "Batch & Shell"
[Beispiele zu VBScript und OpenTextFile und ReadLine auch natürlich.]

Beispiel in einer Batchdatei:
@For /f %%i in (D:\eine\Textdatei.txt) Do @copy d:\srcDir\*.doc \\%%i\d$\Dokus\*.*

Die Zählvariable %%i wird in diesem Fall aufgelöst zur jeweiligen Zeile in der Textdatei.

Gruß
Biber
Member: xcite06
xcite06 Nov 09, 2006 at 17:23:51 (UTC)
Goto Top
Hi,

Einfach in eine Text Datei die Computernamen schreiben. (in folge comp.txt genannt)

Batch Datei mit folgenden Zeilen erstellen:

@echo off
For /F "tokens=1" %%i IN (comp.txt) DO (
xcopy "\\server\freigabe\" "\\%%i\c$\freigabe"
If errorlevel=1 GOTO error
GOTO weiter
:error
echo ERROR: Datei(en) konnten nicht auf %%i kopiert werden. >> status.txt
:weiter
echo Datei(en) erfolgreich auf %%i kopiert. >> status.txt
)

mfg, xcite
Member: Lamerking
Lamerking Nov 09, 2006 at 22:02:28 (UTC)
Goto Top
Super!

Danke für die Antworten.
Genau dass, wonach ich gesucht habe.

Ich hab jetzt allerdings noch ein kleineres Problem.

Wir haben teilweise NT und XP-Clients im Netz. Bei denen heißt das Windows-Verzeichnis bekanntlich unterschiedlich.

Wenn ich nun allerdings versuche mit der %windir% Variable zu arbeiten funktioniert das nicht.
Ich möchte nämlich auf C$ des Rechners zugreifen und dann im %windir% Verzeichnis was ablegen.

Mit
copy c:\ordner\datei \\pc-name\c$\%windir%\
funktioniert es leider nicht.

Hat jemand ne Idee?

Danke schon mal.

Gruß
Tobias
Member: miniversum
miniversum Nov 10, 2006 at 06:51:11 (UTC)
Goto Top
Versuchs mal so:
if /i exist \\pc-name\c$\Windows (
copy c:\ordner\datei \\pc-name\c$\windows
) else (
copy c:\ordner\datei \\pc-name\c$\winNT
)


miniversum
Member: Lamerking
Lamerking Nov 15, 2006 at 14:43:11 (UTC)
Goto Top
Super Danke!!!