underdog
Goto Top

Platzhalter für einen Dateinamen

Guten Tag

Seit mir nicht böse falls es diese frage schon gibt, aber ich habe nichts gefunden.

Ich sollte für einen Projektauftrag eine batch Datei entwickeln die aus einer bestimmten Anzahl von bestimmten .zip-files immer die selbe Datei entpackt, das Problem ist nun die Datei ist von der Namesgebung logisch aufgebaut doch heisst sie nicht gleich, gäbe es eine möglichkeit einen Platzhalter * einzufügen der ganz genau regelt wie viele Buchstaben etc. die Datei enthalten darf?

Viele sonnige grüsse aus der Schweiz

underdog

Content-Key: 141236

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

Printed on: April 26, 2024 at 04:04 o'clock

Member: MegaTraveller
MegaTraveller Apr 22, 2010 at 09:42:15 (UTC)
Goto Top
Hi,

vielleicht hilft ja das hier: http://ss64.com/nt/syntax-wildcards.html

Bye
MT
Member: MegaTraveller
MegaTraveller Apr 22, 2010 at 09:43:52 (UTC)
Goto Top
Mitglied: 77559
77559 Apr 22, 2010 at 09:52:13 (UTC)
Goto Top
Hallo Underdog,

der DOS-Platzhalter "?" für irgendeinein Zeichen akzeptiert leider auch "kein" Zeichen.
Vielleicht gibtst du eine etwas genauere Beschreibung des Aufbaus, dann kann man mit Findstr und seinen "Regular Expressions" einen besseren Weg finden.

Gruß
LotPings
Member: underdog
underdog Apr 22, 2010 at 10:19:58 (UTC)
Goto Top
Hallo LotPings

Das file wäre wie folgt aufgebaut:

x = Zahlen
y = Buchstaben
z = gemischt

xxxx_xxxx_xxxx_xxxxxx_zzzzzzzz.xml

mit *_*_*_*_*.xml habe ich es leider bereits Erfolglos probiert, war aber eher so ein versuch auf gut glück face-smile

edit: Mit dem ? scheint es zugehen, vielen dank und noch einen tollen Tag :D
Mitglied: 77559
77559 Apr 22, 2010 at 11:22:06 (UTC)
Goto Top
Hallo underdog,

wie jetzt, zip oder xml?

Durch die Unterstriche ist das Längenproblem auf den letzten Abschnitt beschränkt,
Vielleicht reicht dies ja schon:
For /f "delims=" %A in ('dir /B "????_????_????_??????_????????.xml"') Do @echo Datei passt: %A

Gruß
LotPings
Member: underdog
underdog Apr 22, 2010 at 11:26:43 (UTC)
Goto Top
Hallo LotPings

Um genau zu sein muss aus einem .zip file ein .xml file herausgefiltert werden, mit den Fragezeichen passt es nach mehrmaligen Test eig. zemlich gut!

Grüsse underdog
Member: kaffebone
kaffebone Apr 22, 2010 at 11:30:09 (UTC)
Goto Top
Hi,

bitte schön:

set x=foo
set y=bar
set z=bar

echo %x%
echo Dateiinhalt>>%x%_%y%.xml
pause


Grüß
Member: Biber
Biber Apr 22, 2010 at 13:06:13 (UTC)
Goto Top
Moin kaffebone,
Zitat von @kaffebone:
Hi,

bitte schön:

set x=foo
set y=bar
set z=bar

echo %x%
echo Dateiinhalt>>%x%_%y%.xml
pause


Grüß

Nach meinen ersten Tests kann die Variable z (bei dir gesetzt mit "set z=bar") erstaunlicherweise auch gesetzt werden mit "set z=Neu-Wülferode".
Selbst bei einer falsch gesetzten Codepage machen die Umlaute dabei keine Probleme.

Dieses Meekrosoft-Krams ist doch wesentlich robuster als ich dachte.

Grüße
Biber
Member: bastla
bastla Apr 22, 2010 at 13:10:31 (UTC)
Goto Top
... aber "pause" find' ich schön ... face-wink

Grüße
bastla
Mitglied: 77559
77559 Apr 22, 2010 at 13:15:38 (UTC)
Goto Top
Zitat von @bastla:
... aber "pause" find' ich schön ... face-wink


Genau ,

Dann kann Biber auch den Kaffee nachholen face-wink

Gruß
LotPings
Member: Biber
Biber Apr 22, 2010 at 13:15:45 (UTC)
Goto Top
Zitat von @bastla:
... aber "pause" find' ich schön ... face-wink
Aber wenn ich mich entscheiden sollte zwischen diesem Schnipsel als Blaupause oder einer LilaPause... face-wink

Grüße
Biber