Neue Datei mit gleichem Namen nur andere Endung und leer...
hallo ihr da draussen,
ich brauch ma wieder eure Hilfe ;)
ich habe eine Datei ( z.b. XXX_to_XXXXXX.ORDRSP.0770.txt). Nun bräuchte ich ein Batchfile das mir eine Neue Datei erstellt, die den gleichen Namen hat, nur die Endung anstatt *.txt ---- *.done und der Inhalt muss leer sein.
Hoffe das war etz irgendwie klar Also der Dateiname ändert sich natürlich immer wieder.
Schon mal "Danke"
Gruß
ich brauch ma wieder eure Hilfe ;)
ich habe eine Datei ( z.b. XXX_to_XXXXXX.ORDRSP.0770.txt). Nun bräuchte ich ein Batchfile das mir eine Neue Datei erstellt, die den gleichen Namen hat, nur die Endung anstatt *.txt ---- *.done und der Inhalt muss leer sein.
Hoffe das war etz irgendwie klar Also der Dateiname ändert sich natürlich immer wieder.
Schon mal "Danke"
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 70386
Url: https://administrator.de/contentid/70386
Ausgedruckt am: 21.11.2024 um 21:11 Uhr
15 Kommentare
Neuester Kommentar
Moin MarcelGausG,
was genau "###" bei Dir denn nicht?
Meine CMD-Prompt-Simulation zeigt keine Auffälligkeiten:
Soweit ich es zu erkennen vermag, würde genau der gewünschte Effekt herauskommen.
Was habe ich übersehen?
Gruß
Biber
[Edit] Fehler gefunden. Die obige Variante würde eine Datei *.done mit 2 Byte Länge (ein CRLF) erzeugen.
Besser (nicht eleganter) wäre:
was genau "###" bei Dir denn nicht?
Meine CMD-Prompt-Simulation zeigt keine Auffälligkeiten:
>echo sdsds>la_to_blabla.ORDRSP.0836.txt
>for %i in (la_to*.txt) do @echo @echo.^>"%~ni.done"
@echo.>"la_to_blabla.ORDRSP.0836.done"
Soweit ich es zu erkennen vermag, würde genau der gewünschte Effekt herauskommen.
Was habe ich übersehen?
Gruß
Biber
[Edit] Fehler gefunden. Die obige Variante würde eine Datei *.done mit 2 Byte Länge (ein CRLF) erzeugen.
Besser (nicht eleganter) wäre:
for %i in (la_to*.txt) do findstr "Biber war hier" "%i">"%~ni.done
Moin MarcelGausG,
meine Zeile war zum Abfeuern vom CMD-Prompt aus gedacht.
In einem Batch müssen alle dynamischen Variablen (i.e. %i) mit zwei Prozentzeichen statt einem geschrieben werden.
Grüße
Biber
meine Zeile war zum Abfeuern vom CMD-Prompt aus gedacht.
In einem Batch müssen alle dynamischen Variablen (i.e. %i) mit zwei Prozentzeichen statt einem geschrieben werden.
::---- snipp MakeMeDune.bat
@for %%i in (la_to*.txt) do findstr "Biber war hier" "%%i">"%%~ni.done
::---- snapp MakeMeDune.bat
Grüße
Biber
Moin MarcelGausG,
>...Hab doch geschrieben das ich ein Vollnoob bin
Na ja, das ist immer eine zwiespältige Aussage hier und in anderen Foren.
Viele FragestellerInnen outen sich sehr schnell bei der Beitragseröffnung als "Noob", "hab leider gar kein Plan", "keine Ahnung wie..", schreiben aber im nächsten Satz, dass sie ganz schnell, weil furchtbar wichtig, eine Lösung haben MÜSSEN, die in einer Endlosschleife eine Webseite aufruft, die Quersumme aller darauf befindlichen Hotline-Telefonnummern berechnet und mit diesem Wert n das CD-Laufwerk n-mal auf- und wieder zuschiebt, während im Hintergrund Gustav Mahlers Sinfonie Nr. 10 erklingen soll (aber nur aus dem rechten Lautsprecher)....
Kurz gesagt, viele der so selbstbezeichneten Noobs wollen hier eine (handwerklich) professionelle Lösung für ein abgedrehtes und an den Haaren herbeigezogenes Szenario - und sind eben nicht daran interessiert, wie oder warum etwas funktioniert, sondern nur dass es funktioniert.
Um dann beim nächsten Jägermeister-mit-Redbull-Abend den Kumpels zu zeigen "Kuck ma' was mein PC kann".
Das ist einer der Gründe dafür, dass selbst so geduldige Wissensteiler wie ich manchmal die Erklärung und die Herleitung der Lösung nur auf explizite Nachfrage abliefern und im ersten Wurf nur eine Quick-and-Dirty-Ergebnisskizze auf den Forumsboden werfen.
Für einen großen Prozentsatz der Eintags-User reicht das (leider) offensichtlich.
Nichtsdestotrotz - wenn Fragen offen sind oder etwas erklärt werden soll: BITTE FRAGEN !
Dieses Forum hier ist durchaus dafür offen, dass auch "Noobs" kommen.
Nur sollten diese auch den Willen und die Einstellung mitbringen "Ich werde dieses Forum nicht als Noob verlassen".
Grüße
Biber
>...Hab doch geschrieben das ich ein Vollnoob bin
Na ja, das ist immer eine zwiespältige Aussage hier und in anderen Foren.
Viele FragestellerInnen outen sich sehr schnell bei der Beitragseröffnung als "Noob", "hab leider gar kein Plan", "keine Ahnung wie..", schreiben aber im nächsten Satz, dass sie ganz schnell, weil furchtbar wichtig, eine Lösung haben MÜSSEN, die in einer Endlosschleife eine Webseite aufruft, die Quersumme aller darauf befindlichen Hotline-Telefonnummern berechnet und mit diesem Wert n das CD-Laufwerk n-mal auf- und wieder zuschiebt, während im Hintergrund Gustav Mahlers Sinfonie Nr. 10 erklingen soll (aber nur aus dem rechten Lautsprecher)....
Kurz gesagt, viele der so selbstbezeichneten Noobs wollen hier eine (handwerklich) professionelle Lösung für ein abgedrehtes und an den Haaren herbeigezogenes Szenario - und sind eben nicht daran interessiert, wie oder warum etwas funktioniert, sondern nur dass es funktioniert.
Um dann beim nächsten Jägermeister-mit-Redbull-Abend den Kumpels zu zeigen "Kuck ma' was mein PC kann".
Das ist einer der Gründe dafür, dass selbst so geduldige Wissensteiler wie ich manchmal die Erklärung und die Herleitung der Lösung nur auf explizite Nachfrage abliefern und im ersten Wurf nur eine Quick-and-Dirty-Ergebnisskizze auf den Forumsboden werfen.
Für einen großen Prozentsatz der Eintags-User reicht das (leider) offensichtlich.
Nichtsdestotrotz - wenn Fragen offen sind oder etwas erklärt werden soll: BITTE FRAGEN !
Dieses Forum hier ist durchaus dafür offen, dass auch "Noobs" kommen.
Nur sollten diese auch den Willen und die Einstellung mitbringen "Ich werde dieses Forum nicht als Noob verlassen".
Grüße
Biber
Hey, wir haben hier so ziemlich das selbe Problem, allerdings brauchen wir für jede *.exe datei eine datei mit entsprechendem namen und der endung *.exe.local.
wir sind jetzt streng nach der anleitung vorgegangen, allerdings sind in manchen unserer Dateien immernoch Inhalte. Vielleicht könnte mir Marcel mal die endgültige lösung die funktionier hat posten? Das müsste sich doch mit .exe dateien genauso verhalten wie mit allen anderen auch oder? Wenn jemand einwände hat, bitte melden =)
Gruß,
Bene
wir sind jetzt streng nach der anleitung vorgegangen, allerdings sind in manchen unserer Dateien immernoch Inhalte. Vielleicht könnte mir Marcel mal die endgültige lösung die funktionier hat posten? Das müsste sich doch mit .exe dateien genauso verhalten wie mit allen anderen auch oder? Wenn jemand einwände hat, bitte melden =)
Gruß,
Bene
Moin ToffiFee,
eigentlich sollte in der Tat auch bei *.exe-Dateien die Mimik die Gleiche sein.
Andererseits kann bei Exe-Dateien natürlich wirklich der Fall eintreten:
Bitte ändere es wie in folgendem CMD-Prompt-Beispiel:
In diesem Beispiel leite ich aus allen w*.exe-Namen im %windir%-Verzeichnis entsprechende 0-Byte-Kopien mit der Zusatzendung ".local" ab.
Gruß
Biber
eigentlich sollte in der Tat auch bei *.exe-Dateien die Mimik die Gleiche sein.
Andererseits kann bei Exe-Dateien natürlich wirklich der Fall eintreten:
- "Biber was here" steht in der Datei
- oder: Findstr schreibt einen Text "Datei xxx konnte nicht geöffnet werden", wenn die *.exe-Datei durchsucht wird.
Bitte ändere es wie in folgendem CMD-Prompt-Beispiel:
>for %i in (%windir%\w*.exe) do @echo "%i"|find "Biber was here" >%~nxi.local
C:\Dokumente und Einstellungen\Biber
>dir *.local
Datenträger in Laufwerk C: ist System XP
Volumeseriennummer: 0815-4711
Verzeichnis von C:\Dokumente und Einstellungen\Biber
16.10.2007 15:37 0 winhelp.exe.local
16.10.2007 15:37 0 winhlp32.exe.local
2 Datei(en) 0 Bytes
In diesem Beispiel leite ich aus allen w*.exe-Namen im %windir%-Verzeichnis entsprechende 0-Byte-Kopien mit der Zusatzendung ".local" ab.
Gruß
Biber
@Biber
Man könnte doch auch wie folgt eine 0Byte-File erzeugen:
Anscheinend muss man aber die Files vorher löschen, da er sonst die
Datei nicht erstellen kann und überschreiben tut er sie nicht.
Aber ob ich jetzt "DEL *.LOCAL" sage oder in jede *.LOCAL-Datei was
reinshifte (@echo "%i"|find "Biber was here" >%~nxi.local) ist eh egal.
Mit freundlichem Gruß
zacharias
Man könnte doch auch wie folgt eine 0Byte-File erzeugen:
del *.local
for %i in (%windir%\w*.exe) do fsutil file createnew "%i.local" 0
Anscheinend muss man aber die Files vorher löschen, da er sonst die
Datei nicht erstellen kann und überschreiben tut er sie nicht.
Aber ob ich jetzt "DEL *.LOCAL" sage oder in jede *.LOCAL-Datei was
reinshifte (@echo "%i"|find "Biber was here" >%~nxi.local) ist eh egal.
Mit freundlichem Gruß
zacharias
Jepp, zacharias,
irgendwie seriöser sieht Dein Code schon aus... ist manchen Kunden schwer vermittelbar, warum der Text "Biber was here" in einer Produktiv-Umgebung eingebaut ist
Aber dann hätte ich noch eine Variation Deiner Lösung:
...damit auch nur diejenigen *.local gelöscht werden, die auch neu angelegt werden.
Grüße
Biber
irgendwie seriöser sieht Dein Code schon aus... ist manchen Kunden schwer vermittelbar, warum der Text "Biber was here" in einer Produktiv-Umgebung eingebaut ist
Aber dann hätte ich noch eine Variation Deiner Lösung:
for %i in (%windir%\w*.exe) do (
If exist "%i.local" del "%i.local"
fsutil file createnew "%i.local" 0
)
...damit auch nur diejenigen *.local gelöscht werden, die auch neu angelegt werden.
Grüße
Biber
ah,herrlichst =)
funktioniert jetzt so weit, hab noch das w*.exe in ".exe" geaendert, da, sagt mir wenn ich mich taeusche, sonst ja nur alle .exe dateien gesucht werden die mit w beginnen. und das %windir% hab ich entfernt, da die aktion ja im aktuellen verzeichnis ausgeführt werden soll... haben uns gestern kurz vor feierabend mit der aktion noch nen rechner geschossen indem wir den modifizierten code fuer die textdateien von marcel auf das c:/windows verzeichnis gejagt haben, ich hoffe das passiert jetzt nicht nochmal =)
bis dahin allerbesten Dank an alle unterstützer.
Gruß,
Bene
funktioniert jetzt so weit, hab noch das w*.exe in ".exe" geaendert, da, sagt mir wenn ich mich taeusche, sonst ja nur alle .exe dateien gesucht werden die mit w beginnen. und das %windir% hab ich entfernt, da die aktion ja im aktuellen verzeichnis ausgeführt werden soll... haben uns gestern kurz vor feierabend mit der aktion noch nen rechner geschossen indem wir den modifizierten code fuer die textdateien von marcel auf das c:/windows verzeichnis gejagt haben, ich hoffe das passiert jetzt nicht nochmal =)
bis dahin allerbesten Dank an alle unterstützer.
Gruß,
Bene