Cmd 如何确定在DOS中使用了哪个特定字符串?

Cmd 如何确定在DOS中使用了哪个特定字符串?,cmd,Cmd,我想重命名文件并创建与文件名对应的目录。 但是,这个文件名给我带来了麻烦。我已经将带有*.mp3的文件名导出为文本文件,我想使用 for /f "delims=" %%i in (test.txt) do rename %%i sameNameAs%%iWithoutMP3 如果我想更改的文件名是“Beyonce-Halo.mp3”,有没有办法使用regex?如果文件名为.mp3,则将其删除,其余部分保留为英语,这与此类似 还有,有没有办法用“-”分隔字符串? 我的意思是,如果字符串是“Bey

我想重命名文件并创建与文件名对应的目录。 但是,这个文件名给我带来了麻烦。我已经将带有*.mp3的文件名导出为文本文件,我想使用

for /f "delims=" %%i in (test.txt) do rename %%i sameNameAs%%iWithoutMP3
如果我想更改的文件名是“Beyonce-Halo.mp3”,有没有办法使用regex?如果文件名为.mp3,则将其删除,其余部分保留为英语,这与此类似

还有,有没有办法用“-”分隔字符串? 我的意思是,如果字符串是“Beyonce-Halo.mp3”,我想创建一个单独的字符串“Beyonce”,这样我就可以用它创建一个文件夹


如果我的描述不够,请告诉我。我会修好的。谢谢大家如果你熟悉正则表达式-也许可以使用VBS脚本而不是CMD

在CMD中编写和调试您需要的东西将非常低效


另一种选择是使用(、包)中的一些工具。

您的需求根本不清楚。如果您提供一个现有文件名的列表,然后是最终结果,这会有所帮助。还有,你试过什么?什么不起作用?