使用批处理文件向批量文件名添加前缀时出现问题

汉尼拔83

我正在尝试为文件夹中的所有文件名添加前缀。

经过几天的搜索,我实际上想到了几乎可以完美运行的内容:

echo        Please specify fileprefix
echo            Your Choise??
set /p pre= ^
for %%i in (*.txt) do ren %%i "%pre%"%%i

问题是,如果前缀以文件名的第一个字符后的字母顺序开头,则第一个文件将被重命名两次。

这里是试图重命名三个文件时输出1.txt2.txt并且3.txt在测试文件夹:

Your Choise??
pre

D:\rntest>ren 1.txt "pre"1.txt

D:\rntest>ren 2.txt "pre"2.txt

D:\rntest>ren 3.txt "pre"3.txt

D:\rntest>ren pre1.txt "pre"pre1.txt

把三个文件留给我pre2.txtpre3.txtprepre1.txt

问题似乎在于在此过程中,第一个文件会按字母顺序自动排序。因此,第一个文件将移至底部,因此将再次进行处理。但是,我不知道这是否是实际发生的情况。

我已经尝试使用调试方法在初始重命名后再次进行重命名。

这是代码

for %%i in ("%pre%""%pre%"*) do ren %%i %%i:~3%

这似乎可以识别正确的(双前缀)文件名,但它不能执行任何操作(文件名不存在或文件名已经相同)。它应该删除文件名的前三个字符以给我正确的结果。

我只是认为必须有一些更好/更简便的方法来执行此操作,而不必进行错误检查和更正。

亚历克斯

编辑:类似nerdwaller评论

您可以dirfor /f循环中使用该命令,以帮助您实现预期的行为,如下所示:

@echo off
echo        Please specify fileprefix
echo            Your Choise??
set /p pre=
for /f "tokens=1* delims=" %%i in ('dir /b /o:-n /a:-d *.txt') do ren "%%i" "%pre%%%i"

dir 命令开关说明:

/b    - Uses bare format (no heading information or summary).
/o:-n - Sort backwards (helps when you have file named similar names like 1.txt and 11.txt)
/a:-d - Don't give any directories (give files only)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用RENAME向一堆文件添加前缀时出现问题

来自分类Dev

使用批处理文件为所有子文件夹中的所有文件名添加前缀

来自分类Dev

如何使用批处理文件向当前文件夹和子文件夹中的所有文件添加前缀

来自分类Dev

Windows批处理为文件名添加前缀,为什么要添加两次?

来自分类Dev

批处理文件并使用文件的文件名

来自分类Dev

批处理文件可将数字前缀添加到基于月份字符串的文件名中

来自分类Dev

使用批处理文件中的msqldump将时间戳记添加到文件名

来自分类Dev

使用qq.FileUploader上传文件时如何在文件名中添加前缀字符串

来自分类Dev

Windows批处理文件匹配文件名中的前缀和后缀

来自分类Dev

在最大的数字文件名中添加前缀

来自分类Dev

在文件名,JavaScript中添加前缀

来自分类Dev

使用批处理文件将文本添加到文件名末尾(但在扩展名之前)

来自分类Dev

批处理文件以根据文件名复制文件

来自分类Dev

使用SDL_strdup和类似文件获取文件名时出现问题

来自分类Dev

批处理文件以将文件内容解压缩到文件夹,并使用zip文件名重命名/前缀内容

来自分类Dev

使用子字符串查看字符串是否在批处理文件中包含子字符串时出现问题

来自分类Dev

使用批处理文件打开网站时出现%20到0的问题

来自分类Dev

的文件名。在批处理文件中

来自分类Dev

批处理文件-文件名提取

来自分类Dev

批处理文件以从文件名中删除减号

来自分类Dev

批处理文件中的文件名提取

来自分类Dev

在批处理文件的单个变量中添加所有cpp文件名

来自分类Dev

批处理文件 - 将文件名添加到 txt 的第一行

来自分类Dev

使用空格安全复制(scp)文件名时出现问题

来自分类Dev

如何获得Win 7批处理文件以输出唯一的文件名前缀列表?

来自分类Dev

如何在批处理文件中导入批处理文件名

来自分类Dev

比较文件名(如果存在),然后使用批处理文件删除

来自分类Dev

如何使用批处理文件替换Windows文件名中的单个字符?

来自分类Dev

在批处理文件中使用日期和时间来创建文件名

Related 相关文章

  1. 1

    使用RENAME向一堆文件添加前缀时出现问题

  2. 2

    使用批处理文件为所有子文件夹中的所有文件名添加前缀

  3. 3

    如何使用批处理文件向当前文件夹和子文件夹中的所有文件添加前缀

  4. 4

    Windows批处理为文件名添加前缀,为什么要添加两次?

  5. 5

    批处理文件并使用文件的文件名

  6. 6

    批处理文件可将数字前缀添加到基于月份字符串的文件名中

  7. 7

    使用批处理文件中的msqldump将时间戳记添加到文件名

  8. 8

    使用qq.FileUploader上传文件时如何在文件名中添加前缀字符串

  9. 9

    Windows批处理文件匹配文件名中的前缀和后缀

  10. 10

    在最大的数字文件名中添加前缀

  11. 11

    在文件名,JavaScript中添加前缀

  12. 12

    使用批处理文件将文本添加到文件名末尾(但在扩展名之前)

  13. 13

    批处理文件以根据文件名复制文件

  14. 14

    使用SDL_strdup和类似文件获取文件名时出现问题

  15. 15

    批处理文件以将文件内容解压缩到文件夹,并使用zip文件名重命名/前缀内容

  16. 16

    使用子字符串查看字符串是否在批处理文件中包含子字符串时出现问题

  17. 17

    使用批处理文件打开网站时出现%20到0的问题

  18. 18

    的文件名。在批处理文件中

  19. 19

    批处理文件-文件名提取

  20. 20

    批处理文件以从文件名中删除减号

  21. 21

    批处理文件中的文件名提取

  22. 22

    在批处理文件的单个变量中添加所有cpp文件名

  23. 23

    批处理文件 - 将文件名添加到 txt 的第一行

  24. 24

    使用空格安全复制(scp)文件名时出现问题

  25. 25

    如何获得Win 7批处理文件以输出唯一的文件名前缀列表?

  26. 26

    如何在批处理文件中导入批处理文件名

  27. 27

    比较文件名(如果存在),然后使用批处理文件删除

  28. 28

    如何使用批处理文件替换Windows文件名中的单个字符?

  29. 29

    在批处理文件中使用日期和时间来创建文件名

热门标签

归档