标题: [文件操作] 求助批处理①汉字转指定拼音②在文件名前加升序序号 [打印本页]
作者: xiyuan5905 时间: 2018-11-3 21:47 标题: 求助批处理①汉字转指定拼音②在文件名前加升序序号
有两个问题想求助大家:
问题一、我原本有如下几个文件夹,原名字为箭头前的中文,想转成箭头后指定的非中文的文件名:
喝水→0_drinkwater
摄像头掰向其他地方→1_camera_error
异常1→1_camera_error1
座位没人→2_nobody
打电话→3_phonecall
抽烟→4_smoke
正常1→5_normal
正常3→5_normal_houshijing
异常2→6_zgyp
正常2→6_zgyp_zuoyouhoushijing
打哈欠→7_dahaqian
打盹→8_sleep
设备遮挡→9_zhedang
俯身→bendover
玩手机→playphone
问题二、现有大量数字乱序,并以“.jpeg"为结尾的文件,
在文件夹里顺序如
xxx599.jpeg
xxx600.jpeg
xxx1.jpeg
xxx2.jpeg
想不改变文件本身在文件夹的顺序,前前面加上升序序号,如:
1_xxx599.jpeg
2_xxx600.jpeg
3_xxx1.jpeg
4_xxx2.jpeg
。
望大佬赐教!! 在此感谢!!
作者: xp3000 时间: 2018-11-4 13:04
将上面文本保存为列表.txt放入需要处理的文件夹.- /*&cls
- @echo off
- setlocal EnableDelayedExpansion
- for /f "delims=" %%a in ('type 列表.txt^|cscript -nologo -e:jscript "%~f0"') do (
- ren %%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(/(.+)→(.+)$/,'"$1" "$2"')
- if(!map[str]){map[str] = true;t+=str+'\r\n';}
- }
- WSH.echo(t);
复制代码
根据时间先后顺序排列+1重命名jpeg- @echo off&setlocal enabledelayedexpansion
- set a=1
- for /f "delims=" %%a in ('dir /b/a-d/oD *.jpeg') do (
- ren %%~nxa !a!_%%~nxa
- set/a a+=1
- )
- pause
复制代码
第一个如果内容整行的就是文件夹名称,下载ren2执行复制代码
或- @echo off
- for /f "tokens=1-2 delims=→" %%a in ('dir /ad /o-d /b "*"') do ren "%%a→%%b" "%%b"
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |