标题: [文件操作] [已解决]请教批处理如何实现自定义序号范围来移动文件? [打印本页]
作者: toyerspollors 时间: 2021-8-9 19:56 标题: [已解决]请教批处理如何实现自定义序号范围来移动文件?
比如我有几千个wma格式的文件,文件名格式为“序号+空格+相关名称“,如:1323 xxx文件名”
如何自定义序号范围,例如实现将
序号0001-0235的文件移动到“A”文件夹中
序号0341-0559的文件移动到”B“文件夹中
序号0773-1389的文件移动到”C“文件夹中
序号2361-3442的文件移动到”D“文件夹中
作者: idwma 时间: 2021-8-9 20:06
- @echo off&setlocal enabledelayedexpansion
- for /l %%i in (1,1,235) do set n=000000%%i© !n:~-4!* A\
- for /l %%i in (341,1,559) do set n=000000%%i© !n:~-4!* B\
- for /l %%i in (2361,1,3442) do set n=000000%%i© !n:~-4!* C\
- pause
复制代码
作者: qixiaobin0715 时间: 2021-8-10 10:24
- @echo off
- setlocal enabledelayedexpansion
- for /l %%i in (1,1,3442) do (
- set n=000%%i
- if %%i lss 341 (
- copy !n:~-4!* A\
- ) else if %%i lss 773 (
- copy !n:~-4!* B\
- ) else if %%i lss 2361 (
- copy !n:~-4!* C\
- ) else if %%i lss 3442 (
- copy !n:~-4!* D\
- )
- )
- pause
复制代码
作者: toyerspollors 时间: 2021-8-14 22:17
本帖最后由 toyerspollors 于 2021-8-14 22:25 编辑
qixiaobin0715 发表于 2021-8-10 10:24
if %%i lss 341 (
copy !n:~-4!* A\
)
请教老师,以上这里使用了数值大小的命令小于“lss 341”,如果我想添加多一个大于“gtr 123”,如取值为大于123且小于341,该如何修改命令才生效?
作者: toyerspollors 时间: 2021-8-14 22:27
回复 2# idwma
n=000000%%i© !n:~-4!*
请教老师,红色字体这些命令,我具体需要看那些教程才能理解这里面的意思?
作者: idwma 时间: 2021-8-14 22:39
回复 5# toyerspollors
运行set/?有帮助
作者: Batcher 时间: 2021-8-14 23:25
回复 5# toyerspollors
参考set命令教程第8页
http://bbs.bathome.net/thread-31727-1-1.html
作者: qixiaobin0715 时间: 2021-8-15 07:11
回复 4# toyerspollors
可以使用if嵌套:- if %%i lss 341 (
- if %%i gtr 123 copy !n:~-4!* A\
- )
复制代码
作者: toyerspollors 时间: 2021-8-15 17:03
回复 8# qixiaobin0715
原来是这样处理,受教了,谢谢!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |