spidi-25
Goto Top

Dateinamen Teilweise editiern

Hallo alle zusammen

bräuchte wieder mal hilfe.

Hier ein code

@echo off & setlocal  
for /f "delims=" %%i in ('dir /b *.pdf') do (    
  set "alt=%%i"    
  call :ProcessFile  
)  
goto :eof  

:ProcessFile  
set "neu="    
echo\  
set /p "neu=Neuen Dateinamen fuer %alt% bitte eingeben: "  
if defined neu ren "%alt%" "%neu%.*"     
goto :eof

jetzt meine Frage, kann man in Zeile 11 hinter (eingeben: ") den Namen von %alt% eintragen lassen damit ich nur noch editieren muss und nicht komplett neu tippen muss.

Grund der Name von %alt% wird von mir teilweise editiert.

Vielen dank im voraus.

Grüße Spidi-25

Content-ID: 154868

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

Ausgedruckt am: 22.11.2024 um 17:11 Uhr

60730
60730 11.11.2010 um 13:08:13 Uhr
Goto Top
Moin,

  • besorg dir die clip.exe aus dem reskit von W2k3
  • zusätzliche zeile 10 oder 11
echo %alt%|clip
  • Dosbox rechte maustaste einfügen

Gruß
Spidi-25
Spidi-25 12.11.2010 um 12:48:44 Uhr
Goto Top
Hallo TimoBeil

die clip.exe ist angeblich schon im Windows

den mit echo %alt%|clip

wird der Name kopiert, den ich auch einfügen kann, aber nicht mehr editieren. Denn nach dem einfügen mit der rechten Maustaste geht er gleich weiter!

Grüße Spidi-25
60730
60730 12.11.2010 um 12:53:47 Uhr
Goto Top
Moin,
Zitat von @Spidi-25:
Hallo TimoBeil

die clip.exe ist angeblich schon im Windows
Welche Verion von Windows hast du denn?

denn mit echo %alt%|clip

wird der Name kopiert, den ich auch einfügen kann, aber nicht mehr editieren. Denn nach dem einfügen mit der rechten Maustaste geht er gleich weiter!

bei mir (XP) nicht, sonst hätte ich dir den Tipp nicht gegeben....

Gruß
Friemler
Friemler 12.11.2010 um 15:04:52 Uhr
Goto Top
Hallo Spidi-25,

Zitat von @Spidi-25:
... wird der Name kopiert, den ich auch einfügen kann, aber nicht mehr editieren. Denn nach dem einfügen mit der rechten
Maustaste geht er gleich weiter!

das liegt daran, das ECHO nach der Ausgabe des Textes (bei Dir die Variable %alt%) einen Zeilenvorschub ausgibt, der auch in der Zwischenablage landet und von SET /P als Druck auf ENTER gewertet wird. Probiere mal folgendes:
<NUL set /p "=%alt%" | clip  
set /p "neu=Neuen Dateinamen fuer %alt% bitte eingeben: "  
Zeile 1 gibt den Inhalt von %alt% ohne nachfolgenden Zeilenvorschub aus. Wenn Du jetzt einen Rechtsklick im DOS-Fenster machst, wird der Wert von %alt% ausgegeben und Du kannst editieren.

@Timo
Die clip.exe ist seit Vista in Windows integriert. Ob das bei allen Versionen so ist, weiß ich nicht.

Gruß
Friemler
Spidi-25
Spidi-25 12.11.2010 um 20:57:44 Uhr
Goto Top
Danke erst mal für die Hilfe

@Timo

Ich habe einmal XP 64x und einmal Win7, auf beiden Betriebssystemen funktioniert es ohne das ich was gemacht habe.

@Friemler

der Tipp funktioniert so weit, aber ist das die einzige Möglichkeit? Kann man das nicht irgend wie Automatisieren, ein automatische einfügen damit man gleich editieren kann?

Grüße Spidi-25
60730
60730 13.11.2010 um 01:04:14 Uhr
Goto Top
moin,

noch weniger Arbeit für dich??

  • V1 am Stück
if exist 2do.cmd del 2do.cmd
for /f "delims=" %%i in ('dir /b *.pdf') do echo ren %%i %%i>>2do.cmd  
call notepad 2do.cmd
pause
2do.cmd

  • V2 geschnitten
for /f "delims=" %%i in ('dir /b E:\!pix\pbr\*.jpg') do (  
		echo ren %%i %%i>2do.cmd
		call notepad 2do.cmd
		call 2do.cmd
)
del 2do.cmd

Aber eigentlich kürzt / ändert man Dateinamen doch immer nach einem bestimmten Muster...

Gruß
Spidi-25
Spidi-25 13.11.2010 um 15:14:33 Uhr
Goto Top
Hallo Timo

Danke erst mal für die weiteren Tipps

aber die vorherige Variante, gefiel mir mehr bei aktiviertem quick Edit-modus, den wen in der 2do.cmd aus versehen der Quellnamen gelöscht wird dann passiert gar nichts mehr!


ändert man Dateinamen doch immer nach einem bestimmten Muster... >> Das muss in meinem Fall so sein, den es handelt sich um *.txt die mit Outlook erstellt werden und da gibt es halt variable Namen.

Grüße Spidi-25