würde ich FINDSTR mit DIR/B verwenden und FOR/F
Im Folgenden werden die Namen mit einer beliebigen Anzahl von zusätzlichen Erweiterungen wie name.txt.ext
und name.txt.ext.ext
usw. verarbeitenDazu gehören ein Name wie name.txt.txt
for /f "delims= eol=:" %%F in (
'dir /b /a-d *.txt.*^|findstr /i "\.txt\."'
) do call :renum "%%F"
Diese Variante wird nur mit einem einzigen zusätzlichen Erweiterungsprozess Namen wie name.txt.ext
(einschließlich name.txt.txt
)
for /f "delims= eol=:" %%F in (
'dir /b /a-d *.txt.*^|findstr /i "\.txt\.[^.]*$"'
) do call :renum "%%F"
Sie auch in mein JREN.BAT regular expression file renaming utility überprüfen könnten. Es kann wahrscheinlich alle Ihre Dateien in einem Schritt filtern und umbenennen, ohne dass ein benutzerdefiniertes Batch-Skript benötigt wird.
Zum Beispiel wird im Folgenden nur Dateien umbenennen wie "name.txt.ext" suchen, und sie in "name_ext.txt"
jren "(\.txt)\.([^.]+)$" "_$2$1" /i
Das Muster sollte 'lesen * .txt. *' (notieren Sie den hinzugefügten Punkt) ... – aschipfl
@aschipfl: Haben Sie versucht, was passiert, wenn Sie das tun? – zb226
versucht, dass bereits, aber es hat nicht funktioniert – Bharath