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

Dateien aus Ordnern einlesen und wieder als Variable ausgeben

Frage Entwicklung Batch & Shell

Mitglied: theone101

theone101 (Level 1) - Jetzt verbinden

14.02.2008, aktualisiert 15.02.2008, 6364 Aufrufe, 12 Kommentare

Hallo zusammen,

ich soll aus Ordner und Unterodner (die mir nicht bekannt sind, sprich ich weis nicht wie viele es gibt) Datien mit Endung *.ts auslesen diese *.ts sollen dann mit dem Befehl TsToXml -f TsToXmlConfig.xml [datiename].ts in XML konvertiert werden.

Ich möchte also eigentlich nur eine schleife die dies erreicht das alle meine Dateien die ich aus den ganzen Ordnern und Unterordnern ausgelesen hab konvertiert werden.

Ich habe schon versucht die Dateien einzulesen und mit dir /b /s *.ts > C:\test.txt geht das auch, er schreibt mir alle Pfade in die test.txt.

Sprich das sieht dann so aus:
C:\Dokumente und Einstellungen\[Ordner]\[Unterordner]\[unbekannt]\muc.ts
C:\Dokumente und Einstellungen\[Ordner]\[Unterordner]\[unbekannt]\muc_690000khz_8mhz.ts
C:\Dokumente und Einstellungen\[Ordner]\[Unter]\[unbek]\[unbek]\muc_834000khz_8mhz_2.ts


Mein Problem ist aber, ich weis nicht wie ich die unterschiedlichen Dateinamen auslesen soll und als variable so in eine schleife packe das ich sie in dem TsToXml Befehl alle Dateien konvertieren kann.

Hoffe da kann mir jemand weiter helfen.

Gruß Thomas

P.S. Danke schon mal im vorraus.
Mitglied: Dani
14.02.2008 um 10:10 Uhr
Hallo Thomas,
probier es mal so:
01.
@echo off 
02.
 
03.
for /f "delims=" %%a in ('dir /s /b "C:\Test" *.ts') do TsToXml -f TsToXmlConfig.xml "%%a"
Es handelt sich um eine einfache Schleife wo, einfach alle Dateien die mit *.ts enden mit den DO-Körper verarbeitet.


Gruß
Dani
Bitte warten ..
Mitglied: theone101
14.02.2008 um 10:25 Uhr
Ne geht leider net ich muss ja in der schleife noch ne variable setzen damit ich ja aus den Textzeilen nur meine z.b. muc.ts rauslese und diese hinten am Befehl TsToXml anhängen kann.

Also TsToXml -f TsToXmlconig.xml muc.ts

In der Datei stehen meine Gelesenen Pfade die ich ja so drinnen habe (z.B.):
C:\Dokumente und Einstellungen\[Ordner]\[Unterordner]\[unbekannt]\muc.ts
C:\Dokumente und Einstellungen\[Ordner]\[Unterordner]\[unbekannt]\muc69000_0khz_8mhz.ts
C:\Dokumente und Einstellungen\[Ordner]\[Unter]\[unbek]\[unbek]\muc_834000khz_8mhz_2.ts
...

Ich möchte nun das meine Batsch aus der ersten zeile nur muc.ts ausliest und dan mir muc.ts hinten an meinen TsToXML Befehl anfügt. Nach der Ausführung des Befehls soll die nächste Zeile eingelesen werden hir wieder nur muc69000_0khz_8mhz.ts und diese soll wieder hinten angehängt werde aber nur diese datei alo nicht der ganze Pfad. usw.

Aber trotzdem Danke
Vielleicht hat ja jemand auch ne andere Idee wie man des schneller machen könnte

Gruß Thomas
Bitte warten ..
Mitglied: bastla
14.02.2008 um 10:44 Uhr
Hallo theone101!

Auch wenn ich den Sinn, nur den Namen einer Datei, welche sich in irgendeinem Unterordner befindet, anzugeben, nicht nachvollziehen kann:
01.
for /f "delims=" %%a in (C:\test.txt) do TsToXml -f TsToXmlConfig.xml "%%~nxa"
Mehr zum Thema findest Du unter "for /?".

Grüße
bastla

[Edit] Überzähliges "l" aus "delims" entfernt. [/Edit]
Bitte warten ..
Mitglied: theone101
14.02.2008 um 13:33 Uhr
Ja hat leider net Funktioniert weis auch net warum er hat die Variable net gefunden bzw hat diese net mit den einzelnen Namen genomen sonder wieder mit dem ganzen Pfad.

Vielleicht hab ich des auch zu unverstädlich geschreiben.

Ich möchte eigentlich nur eine Batch die Dateinamen aus nem Ordner ausliest und diese Dateinamen mit der Endung .ts egal wie viele es sind nacheinander dem Befehl TsToXml übergeben werden. Damit ich des nicht einzeln von Hand abarbeiten muss weil des schon verdamt viele sind

Gruß Thomas
Bitte warten ..
Mitglied: theone101
14.02.2008 um 14:39 Uhr
OHHH ich hab jetzt den Fehler endekt.
Ich darf net den Pfadnamen mit Leerzeichen haben hier halt [Dokumente und Einstellungen].

Als ich alles verschoben habe nur in C:\ dan gings. Vielleicht hat ja irgend einer ne Lösung wie man des mit Leerzeichen machen kann.

Gruß Thomas
Bitte warten ..
Mitglied: Dani
14.02.2008 um 14:41 Uhr
Hallo Thomas,
Vielleicht hat ja irgend einer ne Lösung wie man des mit Leerzeichen machen kann.
Analysiere mal meinen 1. Codeblock...da wirst du die Lösung direkt sehen....


Grüße
Dani
Bitte warten ..
Mitglied: theone101
14.02.2008 um 14:55 Uhr
Ohhh hab noch was endeckt und zwar er wandelt mir alle .ts dateien die im selben verzeichnis sind um aber die Unterordner leider nicht. Weis da jemand wie man dies beheben kann?

Gruß Thomas
Bitte warten ..
Mitglied: bastla
14.02.2008 um 17:23 Uhr
Hallo theone101!

Vielleicht solltest Du nicht nur die Dateinamen, sondern auch die Pfade verwenden ...

Die Leerzeichen im Pfadnamen hätten sich übrigens bei keiner der angebotenen Varianten auswirken dürfen, da "%%a" immer unter Anführungszeichen geschrieben war - außer natürlich, Dein Batch enthält Bestandteile, von denen wir noch nichts wissen.

Falls es Dir unter diesem Aspekt ein Bedürfnis sein sollte, den aktuellen Stand deines Batches zu posten, verwende für die Darstellung bitte <code>-Tags.

Grüße
bastla
Bitte warten ..
Mitglied: theone101
15.02.2008 um 06:39 Uhr
Morgen erst mal, ich möchte allen erst mal herzlich Danken ihr habt mir schon sehr viel weiter geholfen, ich hoffe wir können auch noch den rest der Problemstellung Lösen

Also hier ist der Code:
01.
@echo off 
02.
 
03.
dir /b /s *.ts > C:\test.txt 
04.
 
05.
for /f "delims=" %%a in (C:\test.txt) do TsToXml -f TsToXmlConfig.xml "%%~nxa" 
06.
 
07.
pause
Nun leider benutzt er nicht die Pfade für die Unterdateien und nimmt nur Ihre Namen was mein Befehl TsToXml ja dann nicht wissen kann wo die Datei ist. Der denkt die Datei ist im Selben verzeichniss wie die Batch weil er ja nur den Namen der Datei aus der test.txt ausliest und nicht den ganzen Pfad.

Ich hoffe ihr könnt mir da ein bissle weiterhelfen.

Gruß Thomas
Bitte warten ..
Mitglied: theone101
15.02.2008 um 07:26 Uhr
Hallo noch mal. Tja so schnell kanns gehn habs haraus gefunden.

Für jeden des interesiert:

01.
 
02.
@echo off 
03.
 
04.
dir /b /s *.ts > C:\test.txt 
05.
 
06.
for /f "delims=" %%a in (C:\test.txt) do TsToXml -f TsToXmlConfig.xml "%%~pnxa" 
07.
 
08.
pause
Hab einfach des p dazugefügt für den ganzen Pfad und schon hats geklappt.

Danke nochmal an euch alle. Hätte es ohne euch net geschaft.

Gruß Thomas
Bitte warten ..
Mitglied: Dani
15.02.2008 um 08:27 Uhr
Moin!
Dann leg ich noch einen drauf. :-P

01.
@echo off 
02.
 
03.
for /f "delims=" %%a in ('dir /b /s *.ts') do TsToXml -f TsToXmlConfig.xml "%%~pnxa" 
04.
pause
Grüße
Dani

P.S. Sieht meinem 1. Kommentar ziemlich ähnlich. *g*
Bitte warten ..
Mitglied: bastla
15.02.2008 um 09:39 Uhr
... ich möcht' auch noch mal:
01.
@echo off 
02.
 
03.
for /f "delims=" %%a in ('dir /b /s *.ts') do TsToXml -f TsToXmlConfig.xml "%%a" 
04.
pause
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch - Datei aus Ordner einlesen mit Ausnahmen!
gelöst Frage von DaedrafactionBatch & Shell4 Kommentare

Hallo! Ich bin halb am verzweifeln Ich möchte bestimmte Datei aus einem Ordner auslesen und in eine Datei speichern. ...

Batch & Shell
Powershell intelligent Variablen einlesen
Frage von PinkFLuffyUnicornBatch & Shell5 Kommentare

Hi, ich habe folgendes Problem: Ich hzabe eine Textdatei aus welcher ich gerne zeilenweise variablen auslesen und in einer ...

Batch & Shell
Variable aus VBS in Batch einlesen
gelöst Frage von racer1601Batch & Shell4 Kommentare

Hallo ich habe das Problem das ich die Variable "Ordner" aus einem VBS Script nicht in meine Batch bekomme. ...

Batch & Shell
Powershell - zeilenweise Variablen aus TXT Datei einlesen
gelöst Frage von adm2015Batch & Shell12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte meinen alten Batch Code in Powershell verwenden und finde keinen passenden Lösungsansatz. ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 12 StundenBatch & Shell8 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 14 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Windows 10 dunkler Bildschirm nach Umfallen
Frage von AkcentWindows 1015 Kommentare

Hallo, habe hier einen Windows 10 Rechner der von einem User umgefallen wurde (Beine übers Knie, an den PC ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Batch & Shell
Neuste Datei via PowerShell kopieren
gelöst Frage von kaiuwe28Batch & Shell11 Kommentare

Hallo zusammen, ich hatte mir mit Hilfe der Suche im Forum einen kleinen Code von colinardo rausgesucht und versucht ...