标题: [文件操作] [已解决]批处理怎样只取第一个字母作为文件夹? [打印本页]
作者: 511182890 时间: 2015-6-3 16:27 标题: [已解决]批处理怎样只取第一个字母作为文件夹?
只取第一个字母作为文件夹
目录文件:座套DXF\AA\G1201\136\FT2032-G1202-KC五位-146-副背料-倒顺-551.dxf
我要把批处理放在“座套DXF”下,执行一下得结果为座套DXF\AA\G1201\136\F\FT2032-G1202-KC五位-146-副背料-倒顺-551.dxf
我要把批处理放在“AA”下,执行一下得结果为座套DXF\AA\G1201\136\F\FT2032-G1202-KC五位-146-副背料-倒顺-551.dxf
要二个程序。且多次执行不重复创建F文件夹
作者: terse 时间: 2015-6-3 21:12
这样吗?- @echo off & setlocal enabledelayedexpansion
- for /f "delims=" %%a in ('dir /b /s /a-d') do (
- if "%%a" neq "%~0" (
- set str=%%~na
- for %%i in ("%%a\..") do (
- if "%%~ni" neq "!str:~,1!" (
- md "%%~dpa!str:~,1!" 2>nul
- move "%%a" "%%~dpa!str:~,1!"
- )
- )
- )
- )
- pause
复制代码
作者: 511182890 时间: 2015-6-5 10:36
回复 2# terse
你好帮忙再修改一下
只取第一、二、三的英文字母作为文件夹
目录文件:座套DXF\AA\G1201\136\XFL2032-G1202-KC五位-146-副背料-倒顺-551.dxf
座套DXF\AA\G1201\136\XFL2032-G1202-KC五位-146-副背料-倒顺-551.dxf
我要把批处理放在“座套DXF”下,执行一下得结果为座套DXF\AA\G1201\136\FT\FT2032-G1202-KC五位-146-副背料-倒顺-551.dxf
DXF\AA\G1201\136\XFL\XFL2032-G1202-KC五位-146-副背料-倒顺-551.dxf
我要把批处理放在“AA”下,执行一下得结果为座套
DXF\AA\G1201\136\FT\FT2032-G1202-KC五位-146-副背料-倒顺-551.dxf
DXF\AA\G1201\136\XFL\XFL2032-G1202-KC五位-146-副背料-倒顺-551.dxf
只取英文不取数字,文件的前几位都是英文,有二位英文与三位英文
作者: terse 时间: 2015-6-5 11:11
回复 3# 511182890 - @echo off & setlocal enabledelayedexpansion
- for /f "delims=" %%a in ('dir /b /s /a-d') do (
- if "%%a" neq "%~0" (
- set str=%%~na
- for /f "tokens=1-2 delims=0123456789" %%i in ("!str:~,3!") do (
- set "str=%%i%%j"
- )
- for %%i in ("%%a\..") do (
- if "%%~ni" neq "!str!" (
- md "%%~dpa!str!" 2>nul
- move "%%a" "%%~dpa!str!"
- )
- )
- )
- )
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |