Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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
GELÖST

Dateiinhalte per Batch aus Datei auslesen und in neue Datei schreiben

Frage Entwicklung Batch & Shell

Mitglied: Brother-Tuck

Brother-Tuck (Level 1) - Jetzt verbinden

23.01.2012, aktualisiert 15:58 Uhr, 7884 Aufrufe, 5 Kommentare

Hallo Zusammen,

ich habe ein kleines Batch-Problem.
Habe mehrere Stunden im Internet gesucht aber einfach nichts passendes gefunden, es existieren immer nur Teile, leider keine Passende Batch-Datei.

Also ich benötige eine Batch-DateiA,
die aus einer Textdatei Computernamen die untereinanderstehen einzeln in eine Variable liest,
und dann in einer anderen Batch-DateiB den Computernamen ersetzt.
Diese Batch-Datei sollte unter dem Computernamen gespeichert werden.
Das Ganze soll immer wiederholt werden bis alle Computernamen die in der Textdatei stehen als Batch-Datei zur Verfügung stehen.

Es handelt sich um ca. 200 Computernamen.
Eines meiner Probleme ist das ich den Text der Batch-DateiB nicht in eine Variable bekomme, Teile davon werden einfach in Code umgewandelt, weis einfach nicht wie ich das umgehen kann...

Der Inhalt der Batch-DateiB lautet:
01.
@set #=||(set #=1&start "%~dpnx0" /min cmd /c %0 %*&set #=&goto :eof) 
02.
 
03.
echo off 
04.
 
05.
dir "\\%COMPUTERNAME%\c$\Dokumente und Einstellungen\*.pst" /s /Q >"\\%Servername%\Outlook\%username%\%COMPUTERNAME%-%date%.log"
Für die Batch-DateiA habe ich bereits mit den Befehlen echo, for und findstr experimentiert, aber ich bekomms einfach nicht hin...

Ich hoffe mir kann jemand helfen, bin mit meinem Latein(hatte nie welches ) am Ende.

Wenn möglich sollte die Batchdatei unter den Betriebssystemen Windows XP, Vista und 7 laufen.

Solltet ihr noch Angaben benötigen einfach fragen, habe bestimmt noch was vergessen.
Mitglied: Skyemugen
23.01.2012 um 15:22 Uhr
Aloha,

na, da kannst du ja nicht dolle gesucht haben, ehrlich gesagt ... solltest nicht im Internet sondern bei Administrator.de im Batch-Bereich suchen
01.
for /f "usebackq" %%s in ("E:\Skripte\textdatei1.txt") do ( 
02.
03.
		echo @set #=^|^|^(set #=1^&start "%%~dpnx0" /min cmd /c %%0 %%*^&set #=^&goto :eof^) 
04.
		echo\ 
05.
		echo echo off 
06.
		echo\ 
07.
		echo dir "\\%%COMPUTERNAME%%\c$\Dokumente und Einstellungen\*.pst" /s /Q ^>"\\%%Servername%%\Outlook\%%username%%\%%COMPUTERNAME%%-%%date%%.log" 
08.
	)>"E:\Skripte\%%s.bat" 
09.
)
zu for haben wir mehr als genügend Stoff und Tutorials, Escapen per ^ kauen wir auch öfter durch und % als Text setzen, kommt nun auch nicht unhäufig vor ...

greetz André

P.S.: Wir haben hier eine schöne Codeformatierung (link), die man auch im Nachhinein noch hineineditieren kann.
Bitte warten ..
Mitglied: Brother-Tuck
23.01.2012 um 16:08 Uhr
Danke für den Link.

Mein Fehler, die Variablen %Computernamen% sollen ebenfalls durch den Computernamen ersetzt werden.
Das ist mein eigentliches Problem.

Wenn der Computername PC001 lautet, dann sollte die Datei PC001.cmd heißen und der Inhalt wie folgt lauten:

01.
@set #=||(set #=1&start "%~dpnx0" /min cmd /c %0 %*&set #=&goto :eof) 
02.
 
03.
echo off 
04.
 
05.
dir "\\PC001\c$\Dokumente und Einstellungen\*.pst" /s /Q >"\\%Servername%\Outlook\%username%\PC001-%date%.log"
Bitte warten ..
Mitglied: bastla
23.01.2012 um 18:23 Uhr
Hallo Brother-Tuck und willkommen im Forum!

Wenn Du Skyes Vorschlag schon näher betrachtet / nachvollzogen hast (vorzugsweise ohne ein "echo off" vorweg), wird Dir doch sicherlich die Zeile 8 aufgefallen sein - daraus sollten sich dann auch die für die Zeile 7 erforderlichen Änderungen ableiten lassen ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
23.01.2012 um 18:39 Uhr
Aloha bastla,

boa mein Nacken brennt von der Physio, holla die Waldfee - apropros brennt, der ersten Stock steht gerade in Flammen, na egal, heiß her geht's hier eher nicht im Thread

nun, wenn der TE genau so vorher stundenlang im Internet gesucht hat, wie er hier die paar Codezeilen sich durchliest, weiß ich, warum wir hier einen neuen Thread haben ... ja, ich bin heute gemein - a) ist Montag und b) ist es gerechtfertigt

naja egal, er wird hoffentlich deinen Hinweis folgerichtig interpretieren, ohne dass wir ihm extra die Laufvariable vor die Nase halten *guck mal da, ätsch*

Also mein letzter Hinweis bzw. link, da er auch danach noch nicht gesucht hat: Meister Friemlers Tutorial zur FOR-Schleife

greetz André

P.S.: @Brother-Tuck, nimm's mir nicht krumm aber ich kaue eben lieber mein Essen erneut durch als aufbereitete Lösungen aber ich bin zuversichtlich bei dir, hast du doch bereits Codeblöcke hineineditiert, das ist ja schonmal was, vor allem auf einem Montag
Bitte warten ..
Mitglied: Brother-Tuck
24.01.2012 um 09:57 Uhr
Ich schäme mich.
Bin gestern mit dem falschen Fuß aufgestanden.
Hat super funktioniert, vielen Dank.
Jetzt kann ich weitermachen^^

PS:@Skyemugen, ich nehms dir nicht krumm.
Die Wahrheit braucht keine Entschuldigung.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Eingabe in Datei schreiben (2)

Frage von MedicalAd zum Thema Batch & Shell ...

Batch & Shell
gelöst Text Datei bestimmte Bereiche lesen und in neue Text schreiben (3)

Frage von TurboD zum Thema Batch & Shell ...

Batch & Shell
gelöst Größe einer Datei per BATCH in eine TXT schreiben (5)

Frage von marvinpl zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(8)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Datenschutz

Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht

(1)

Information von BassFishFox zum Thema Datenschutz ...

Firewall

PfSense OpenVPN beschleunigen

Tipp von Dobby zum Thema Firewall ...

Utilities

CCleaner 5.33 mit Malware infiziert

(27)

Information von SeaStorm zum Thema Utilities ...

Heiß diskutierte Inhalte
Utilities
CCleaner 5.33 mit Malware infiziert (27)

Information von SeaStorm zum Thema Utilities ...

Festplatten, SSD, Raid
gelöst Problem mit DELL 815R Server und Windows Bluescreen (24)

Frage von Leo-le zum Thema Festplatten, SSD, Raid ...

Windows Systemdateien
Windows bootet nicht mehr Fehlermeldung 0xc0000098 (19)

Frage von franzgoerlich zum Thema Windows Systemdateien ...

Windows Netzwerk
Dateien mit Intelligenz per GPO ins Programmverzeichnis (14)

Frage von erwin.t zum Thema Windows Netzwerk ...