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

Batch - Dateinamen aus Unterordner lesen und zusammen mit String in Datei schreiben

Frage Entwicklung Batch & Shell

Mitglied: Neon-Samurai

Neon-Samurai (Level 1) - Jetzt verbinden

07.10.2008, aktualisiert 09.10.2008, 7066 Aufrufe, 5 Kommentare

Hi,

irgendwie habe ich meine Frage noch nicht gefunden, also poste ich mal was Neues

Folgendes Problem:

Ich habe eine Ordnerstruktur mit x Unterordnern. Irgendwo in den Unterordner befinden sich bestimmte Text-Dateien (in meinem Fall mit .he-Endung). Jeder Ordner, der eine solche Datei enthält hat einen Unterordner \TM, der eine .tmw-Datei enthält.

Ich muss jetzt den Namen der .tmw-Datei irgendwie in die .he-Datei schreiben, zuzüglich eines Strings davor, und zwar für den kompletten Verzeichnis-Baum.

Ich habe z.B. versucht den Namen der .tmw-Datei in eine Variable zu schreiben [for /F "tokens=*" %i IN ('dir %CD%\_TM\*.tmw /B') do (SET TMW=%i)] die ich dann z.B. mit dem echo command inklusive eines Strings an die .he-Datei anhängen könnte. Aber das müsste dann ja für alle .he-Dateien laufen...

Ich bastel schon ewig dran, vielleicht hat jemand ja eine Idee. hoffe ich konnte es verständlich rüber bringen...

Tausend dank vorab!

Gruß,
/micha
Mitglied: problemsolver
07.10.2008 um 13:19 Uhr
Hallo...

ich hoffe ich habe dein Problem verstanden:
Zwei Dateien:

Datei 1: start.bat Positioniert: Oberster Order der untersucht werden soll.
Datei 2: HeDateiVerarbeitung.bat Positioniert: siehe Datei 1

Erklärung unten!!!

Inhalt Datei 1:
01.
@echo off 
02.
dir /S /B *.he>"%~dp0ergebnis.txt" 
03.
for /F "tokens=*" %%i IN (ergebnis.txt) DO call HeDateiVerarbeitung.bat "%%i" 
04.
echo Fertig! 
05.
pause
Inhalt Datei 2:

01.
set "HeDatei=%1" 
02.
set "HePfad=%~dp1" 
03.
set "TMWPfad=%HePfad%TM\" 
04.
if exist "%TMWPFAD%" dir /B /S "%TMWPfad%*.tmw" >%HeDatei%
Erklärung:
start.bat durchläuft alle Unterordner in dem die Datei start.bat sich befindet und sucht nach .he-Dateien und schreibt die Lagerorte in eine Datei im gleichen Ordner. (ergebnis.txt)
Diese Ergebnisdatei wird im nächsten Schritt Zeile für Zeile durchlaufen und analysiert mit der HeVerarbeitung.bat.
In der HeVerarbeitung.bat werden die Daten jeder einzelnen Zeile in Variablen zur weiteren Verarbeitung gespeichert.
Sollte der Pfad %TMWPFad% existieren, listet er alle *.tmw Dateien in diesem Verzeichnis auf und schreibt das Ergebnis in die He-Datei (die er sich in der Variable HeDatei gemerkt hat)
Nach Verarbeitung der Datei springt er zur nächsten Zeile der ergebnis.txt und so weiter und so fort

Hoffe ich konnte Dir helfen... verstehe zwar nicht wofür Du es brauchst... aber naja ;)

Feedback wäre gut, ob es funktioniert oder nicht...

Gruß

Markus
Bitte warten ..
Mitglied: Neon-Samurai
09.10.2008 um 12:28 Uhr
Hi!

wow, mit so einer guten und schnellen antwort habe ich garnicht gerechnet. Erst einmal vielen Dank Das bringt mich auf alle Fälle weiter.

Kurz zur Erklärung: Die he-Dateien sind sowas wie INIs für ein Programm, und der Pfad zu den tmw-Dateien ist sowas wie ein Parameter.

So, was mir jetzt noch fehlt. Ich muss nicht den kompletten Pfad der tmw-Datei in die he-Datei schreiben, sondern einen String und dann die Variable, in der der Dateiname steht (z.B. "Die tmw-Datei ist hier=\_TM\%HeDatei%), und den zusammengesetzen String muss ich dann unten in der he-Datei anhängen (mit >> statt >, richtig?), da in der Datei schon Inhalt steht.

Ansonsten ist das schon mal total super so!!

Gruß
/micha
Bitte warten ..
Mitglied: problemsolver
09.10.2008 um 16:31 Uhr
Hallo,

Schreibst Du mit bitte mal bitte einen kompletten Beispielinhalt einer he-Datei? Die Erläuterungen kannst Du dann nochmal dabeischreiben.
So ganz kann ich es so leider nicht nachvollziehen. Versuche Dir aber gerne noch zu helfen.

Gruß

Markus
Bitte warten ..
Mitglied: Neon-Samurai
09.10.2008 um 16:50 Uhr
Hi Markus!

hier ist ein wenig Beispielinhalt:

TargetEncoding=UTF-8
ExportGlossary=
NumberOfUpdates=1
LastValidationReport=
Glossary_0=\TM\dateiname.tmw

Mir geht es im Speziellen darum, die letzte Zeile zu schreiben. D.h "Gloassary_0=\TM\" als festen String und dann eben den Namen der jeweiligen tmw-Datei.

Gruß,
/micha
Bitte warten ..
Mitglied: problemsolver
09.10.2008 um 18:10 Uhr
Hallo Micha,

dein Weg zum Glück steht hier
Bitte einfach Datei 2 (HeDateiVerarbeitung) durch diese austauschen. Meinem Test nach sollte es klappen. Feedback erwünscht, ob es funktioniert

01.
set "HeDatei=%1" 
02.
set "HePfad=%~dp1" 
03.
set "TMWPfad=%HePfad%TM\" 
04.
if exist "%TMWPfad%" ( 
05.
echo TargetEncoding=UTF-8>%HeDatei% 
06.
echo ExportGlossary=>>%HeDatei% 
07.
echo NumberOfUpdates=1>>%HeDatei% 
08.
echo LastValidationReport=>>%HeDatei% 
09.
set "DeineZeile=Glossary_0=\TM" 
10.
for /F " usebackq tokens=*" %%i IN (`dir /B "%TMWPfad%*.tmw"`) DO echo %DeineZeile%\%%i>>%HeDatei% 
11.
)
Bin mal gespannt
Gruß

Markus
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Schreiben eines Strings mit Leerzeichen in eine Datei
gelöst Frage von c20082005Batch & Shell6 Kommentare

Hallo, nach langem Rum- und Ausprobieren möchte ich Euch um Hilfe bitten für folgendes Problem: Ich möchte mit einer ...

Batch & Shell
Dateien mit Teil des Dateinamen per Batch in Unterordner verschieben
gelöst Frage von smitternachtBatch & Shell14 Kommentare

Hallo, ich muß hier Telefonmitschnitte automatisiert ablegen. Die Dateien sehen folgendermaßen aus: Richtung#interneNummerexterneNummer#Datum#Uhrzeit.wav Beispiel: In#24023147770#20160427#135844.wav (eigehend) Out#24 (ausgehend) Nun ...

Batch & Shell
Mit Batch-Datei eine Datei lesen, Zeilen ändern und als neue Datei schreiben
gelöst Frage von GeoSemBatch & Shell20 Kommentare

Hallo Ich versuche nun schon seit einiger Zeit das "kleine" Script (unter Windows 8) zum laufen zu bringen - ...

Batch & Shell
Batch Datei zum verschieben von Dateien aus Unterordnern ?
gelöst Frage von Ghostrider1911Batch & Shell10 Kommentare

Hallo, ich bräuchte eine Batch Datei die Dateien aus Unterordnern verschiebt. Also ich habe folgende Verzeichniss Struktur: Z:\Dateien\Ordner1\M1\ Z:\Dateien\Ordnärx\M1\ ...

Neue Wissensbeiträge
Microsoft

Update KB4073578 für AMD CPU (Spectre und Meltdown Lücke)

Information von sabines vor 3 StundenMicrosoft

Wegen Problemen (BOSD, nicht startende PCs) wurde das Update KB4056897 und KB4056894 für AMD CPUs zurückgezogen. Dieses Update KB4073578 ...

Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 16 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 23 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 1 TagWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Heiß diskutierte Inhalte
Batch & Shell
Anmeldevorgang für Informatikraum (Schule) unter Windows
Frage von IngenieursBatch & Shell24 Kommentare

Hey zusammen, ich werde in naher Zukunft den Informatik Raum meiner jetzigen Schule von dem aktuellen Betreiber übernehmen (Vertrag ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1019 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...