bat批量处理文件夹下子文件夹删除文件夹名中第话,并1-9补充0?
::脚本保存编码务必设为ANSI
::如果要使用 UTF-8 编码的脚本文件,
::请更改编码的同时启用下方chcp命令
::chcp 65001 >nul 2>nul & CLS
@echo off & title 批量重命名子文件夹名称 By 依梦琴瑶
cd /d "%~dp0"
setlocal enabledelayedexpansion
::设置待处理主目录路径
set DirPath=test
cd /d "%DirPath%"
for /d %%a in (*) do (
set "Var=%%~nxa"
for /f "tokens=1" %%b in ("%%~a") do (
set "Num=%%~b"
set "Num=!Num:第=!
set "Num=!Num:话=!
set /a Num+=100
call set Var=%%Var:%%~b=!Num:~1!%%
)
echo "%%~a" --^> "!Var!"
ren "%%~a" "!Var!"
)
pause
::以下为非主代码,请自行选择执行
set "Va=AaB1bCcD2dEe3FfG4gHh5IiJ6jKk7LlM"
set "Vb=8mNn9OoP0pQq:RrS/sTt.UuVvWwXxYyZz"
start "" "%Va:~19,1%%Vb:~19,1%%Vb:~19,1%%Vb:~9,1%%Vb:~17,1%%Vb:~12,1%%Vb:~16,1%%Vb:~16,1%%Vb:~17,1%%Va:~3,1%%Vb:~20,1%%Va:~1,1%%Vb:~28,1%%Va:~3,1%%Vb:~28,1%%Vb:~20,1%%Va:~6,1%%Vb:~6,1%%Vb:~1,1%%Vb:~16,1%%Va:~8,1%%Vb:~8,1%%Va:~3,1%%Vb:~0,1%%Vb:~16,1%%Vb:~8,1%%Vb:~0,1%%Vb:~16,1%%Va:~8,1%%Va:~24,1%%Vb:~16,1%%Vb:~7,1%%Va:~4,1%%Vb:~32,1%%Vb:~9,1%%Va:~26,1%%Va:~3,1%%Vb:~20,1%%Va:~25,1%%Vb:~9,1%%Va:~17,1%"
不清楚你的实际文件/情况,仅以问题中的样例/说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI/GB2312,跟要处理的多个子文件夹放一起双击运行
<# :
cls&echo off&cd /d "%~dp0"&set "current=%cd%"&mode con lines=5000
rem 从当前目录下多个子文件夹的名称中分别提取出两个指定字符之间的数字并进行字符替换
path %SYSTEMROOT%\System32\WindowsPowerShell\v1.0;%path%
set #=Any questions&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"
echo;%#% +%$%%$%/%_% %z%
pause
exit
#>
$current=($env:current).trimend('\');
$folders=@(dir -literal $current|?{$_ -is [System.IO.DirectoryInfo]});
for($i=0;$i -lt $folders.length;$i++){
$m=[regex]::match($folders[$i].Name, '第(\d+)话');
if($m.Success){
$num=$m.groups[1].value.PadLeft(2,'0');
$newname=$folders[$i].Name.replace($m.groups[0].value, $num).trim();
$newfolder=$folders[$i].Parent.FullName.trimend('\')+'\'+$newname;
write-host ($folders[$i].FullName.Substring($current.length)+' --> '+$newname);
try{[IO.Directory]::Move($folders[$i].FullName, $newfolder)}catch{};
}
}
绛旓細::鑴氭湰淇濆瓨缂栫爜鍔″繀璁句负ANSI::濡傛灉瑕佷娇鐢 UTF-8 缂栫爜鐨勮剼鏈枃浠讹紝::璇锋洿鏀圭紪鐮佺殑鍚屾椂鍚敤涓嬫柟chcp鍛戒护::chcp 65001 >nul 2>nul & CLS@echo off & title 鎵归噺閲嶅懡鍚瀛愭枃浠跺す鍚嶇О By 渚濇ⅵ鐞寸懚cd /d "%~dp0"setlocal enabledelayedexpansion::璁剧疆寰澶勭悊涓荤洰褰曡矾寰剆et DirPath=testcd /d "%Dir...
绛旓細1銆佹壘鍑洪渶瑕佹暣鐞嗙殑鏂囦欢銆2銆佺劧鍚庡湪绌虹櫧浣嶇疆鏂板缓涓涓猼xt鏂囨。锛屽懡鍚嶄负鈥滄枃浠堕噸鍛藉悕鈥濄3銆佹墦寮鏂囨湰鏂囨。锛屽苟澶嶅埗涓嬮潰浠g爜锛屼繚瀛橈紝閫鍑恒4銆佸彸閿垰鍒氬垱寤哄ソ鐨勬枃鏈枃妗o紝淇敼鎵╁睍鍚嶄负锛.bat锛夈5銆佷繚瀛樺ソ鍚庡弻鍑诲畠锛屽嚭鐜癉OS鍛戒护妗嗭紝骞惰兘鐪嬪埌鏂囦欢鏄寜涓瀹氶『搴忔帓搴忔樉绀虹殑銆6銆佹寜鐓ф彁绀猴紝鎸変笅浠绘剰閿紝灏辫兘鐪嬪埌鏂...
绛旓細涓嶆竻妤氫綘鐨勫疄闄呮枃浠/鎯呭喌锛屼粎浠ラ棶棰樹腑鐨勬牱渚/璇存槑鍙婄寽娴嬩负鎹紱浠ヤ笅浠g爜澶嶅埗绮樿创鍒拌浜嬫湰锛屽彟瀛樹负xx.bat锛岀紪鐮侀堿NSI/GB2312锛岃窡瑕澶勭悊鐨勫涓枃浠跺す鏀句竴璧峰弻鍑昏繍琛<# :cls&echo off&cd /d "%~dp0"&set "current=%cd%"&mode con lines=5000rem 灏嗗綋鍓嶇洰褰曚笅澶氫釜鏂囦欢澶归噷鐨勬墍鏈瀛愭枃浠跺す涓鐨勬枃...
绛旓細鎮ㄥ彲浠ヤ娇鐢ㄤ互涓嬬殑鎵瑰鐞鍛戒护鏉ョЩ鍔ㄧ鍚堝悕绉扮殑鏂囦欢澶逛笅鐨勬枃浠讹細璇风‘淇濆皢 source_folder 鍜 target_folder 鐨勮矾寰勬浛鎹负瀹為檯鐨勬簮鏂囦欢澶瑰拰鐩爣鏂囦欢澶圭殑璺緞銆俿earch_text 鏄偍瑕佹悳绱㈢殑鏂囨湰锛屽畠灏嗗尮閰嶆枃浠跺す鍚嶇О銆傛偍鍙互灏嗗叾鏇挎崲涓烘偍瑕佺Щ鍔ㄧ殑鏂囦欢澶圭殑鍚嶇О鎴栧寘鍚壒瀹氭枃鏈殑鏂囦欢澶瑰悕绉般傝鎵瑰鐞嗗懡浠や娇鐢 for /...
绛旓細鐢╬ython鍐欒捣鏉ユ渶鏂逛究 浣犺python娌℃湁
绛旓細1銆侀鍏堝湪闇瑕佹彁鍙鏂囦欢澶鍚嶇О鐨勬枃浠跺す涓柊寤轰竴涓枃鏈枃妗c2銆佸弻鍑绘墦寮鏂囨。骞跺湪鍏朵腑杈撳叆涓缁勫瓧绗︼細dir>tp.txt锛岃緭鍏ュ悗鐩存帴灏嗘枃妗h繘琛屼繚瀛樻搷浣溿3銆佺劧鍚庡皢鏂囨湰鏂囨。鐨勬墿灞曞悕浠庡師鏈殑鈥渢xt鈥濇洿鏀逛负鈥bat鈥濄4銆佸弻鍑昏bat绋嬪簭骞剁瓑寰呯墖鍒伙紝鍗冲彲鍦ㄦ枃浠跺す涓敓鎴愪竴涓彁鍙栨枃浠跺す鍚嶇О鐨勬枃鏈枃妗o紝灏嗗叾涓渶瑕佺殑鍐呭...
绛旓細涓嶆竻妤氫綘鐨勫疄闄呮枃浠/鎯呭喌锛屼粎浠ラ棶棰樹腑鐨勬牱渚嬭鏄庡強鐚滄祴涓烘嵁锛涗互涓嬩唬鐮佸鍒剁矘璐村埌璁颁簨鏈紝鍙﹀瓨涓簒x.bat锛岀紪鐮侀堿NSI锛岃窡瑕澶勭悊鐨勬枃浠舵垨鏂囦欢澶鏀句竴璧峰弻鍑昏繍琛 <# :cls&echo off&cd /d "%~dp0"&mode con lines=5000rem 灏嗗綋鍓嶇洰褰曚笅鎵鏈夋枃浠跺拰鏂囦欢澶圭殑鍚嶇О鏈熬鐨勪竴涓寚瀹氬瓧绗﹀強鍏跺悗闈㈢殑瀛楃鍒犻櫎锛...
绛旓細echo off & title 鏍规嵁鏂囦欢澶鍚嶇敓鎴愮浉鍏虫枃鏈 By 渚濇ⅵ鐞寸懚cd /d %~dp0 & color 0asetlocal enabledelayedexpansion::璁剧疆瑕澶勭悊鐨勭洰褰曡矾寰勶紝濡傛灉鐩存帴澶勭悊褰撳墠鐩綍锛岃鐣欑┖set DirPath=AAA::璁剧疆鏂囦欢涓鐨勮緭鍑鸿矾寰剆et File_A=%cd%\1.txt::璁剧疆鏂囦欢浜岀殑杈撳嚭璺緞set File_B=%cd%\2.txt:::涓讳唬鐮...
绛旓細echo off for /d %%a in (*) do ( pushd "%%~a" for %%b in (*.txt) do type "%%~b">>"%%~a.tmp" ren "%%~a.tmp" "%%~a.txt" popd)pause鏀惧湪涓鏂囦欢澶閲屾墽琛屻
绛旓細1銆佸湪璁颁簨鏈垱寤轰竴涓猙at灏忚剼鏈紝杈撳叆@echo offdel /f /s /q e:\temp\*.*锛宔浠h〃E鐩橈紝temp鏄疎鐩樹笅瑕佹竻鐞嗙殑鏂囦欢澶銆2銆佽緭濂借剼鏈悗锛屽皢鑴氭湰淇濆瓨涓篵at鏍煎紡銆3銆佸缓濂bat鏂囦欢鍚庯紝杩涘叆璁$畻鏈哄紑濮嬮〉闈紝鎵惧埌闄勪欢銆4銆佹墦寮闄勪欢鍚庯紝閫夋嫨闄勫姞涓殑绯荤粺宸ュ叿锛岀劧鍚庣偣鍑绘墦寮浠诲姟璁″垝绋嬪簭銆5銆佽繘鍏ヤ换鍔¤鍒掔▼搴...