标题: [文本处理] 批处理如何将文件名前缀相同的jpg图片放在同一个文件夹下? [打印本页]
作者: lihong 时间: 2018-10-27 16:46 标题: 批处理如何将文件名前缀相同的jpg图片放在同一个文件夹下?
卷 大白菜U盘 的文件夹 PATH 列表
卷序列号为 1844-B76A
G:.
1.txt
10110001.jpg
10110002.jpg
10110003.jpg
10110004.jpg
10110005.jpg
10110006.jpg
10110007.jpg
10110008.jpg
10110009.jpg
13510093.jpg
13510094.jpg
13510095.jpg
13510096.jpg
13510097.jpg
13610019.jpg
13610020.jpg
13610021.jpg
13710007.jpg
13710008.jpg
13710009.jpg
13710012.jpg
13810039.jpg
13810040.jpg
13810041.jpg
13810042.jpg
13910001.jpg
13910002.jpg
13910003.jpg
13910004.jpg
14010001.jpg
14010002.jpg
14010003.jpg
14110018.jpg
14110020.jpg
14110021.jpg
没有子文件夹- /*&cls
- @echo off
- for /f "delims=" %%a in ('dir /a-d/b *.jpg^|cscript -nologo -e:jscript "%~f0"') do (
- md "%%a\"
- move /y "%%a*.jpg" "%%a\"
- )
- pause&exit
- */
-
- var t='', map={}, files = WScript.StdIn.ReadAll().split('\r\n');
- for (var i=0; i<files.length; i++){
- var str = files[i].replace(/\s*\S+$/,'')
- if(!map[str]){map[str] = true;t+=str+'\r\n';}
- }
- WSH.echo(t);
复制代码
这段代码在哪里修改检测的文件名称???
作者: flashercs 时间: 2018-10-27 17:16
把文件名都清空了。啥意思?
作者: xp3000 时间: 2018-10-28 01:45
本帖最后由 xp3000 于 2018-10-28 11:18 编辑
- /*&cls
- @echo off
- for /f "delims=" %%a in ('dir /a-d/b *.jpg^|cscript -nologo -e:jscript "%~f0"') do (
- md "%%a\"
- move /y "%%a*.jpg" "%%a\"
- )
- pause&exit
- */
-
- var t='', map={}, files = WScript.StdIn.ReadAll().split('\r\n');
- for (var i=0; i<files.length; i++){
- var str = files[i].replace(/(.{3,4}).+$/,'$1')
- if(!map[str]){map[str] = true;t+=str+'\r\n';}
- }
- WSH.echo(t);
复制代码
看样子不知道你要取3个还是4个,修改这里(.{3,4}).+$,
如果有需要可以在()后面加个特征,比如0,(.{3,6})00.+\.jpg$,
碰到101001.jpg也会和1234500000000056789.jpg算在内处理,
间隔是00,()里面是%%a内容,3和6是字符
作者: lifei259 时间: 2018-10-29 14:27
- @echo off&setlocal EnableDelayedExpansion
- for %%a in (*.jpg) do (set a=%%a
- set aa=!a:~0,4!
- if not exist "!aa!" echo,md "!aa!"
- echo,move "%%~sa" "!aa!"
- )
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |