标题: [已解决]20元求助批处理命名文本文件 [打印本页]
作者: lxh623 时间: 2020-6-6 18:53 标题: [已解决]20元求助批处理命名文本文件
本帖最后由 lxh623 于 2020-6-6 18:55 编辑
文本文件都是在几级子文件夹下。
文本a:
X88n1658--重编诸天传(二卷)--〖宋.行霆述〗—第1658部卍續藏第88册
J01nA042--大慧普觉禅师年谱(1卷)--〖宋 祖咏编 张抡序 宗演跋〗—嘉興藏第01冊 正編042
现有文件名,含有—后面等部分,比如:
第1658部卍續藏第88册P0421 重編諸天傳(二卷), 〖宋.行霆述〗
嘉興藏第01冊 正編042 大慧普覺禪師年譜(1卷) 〖宋 祖詠編 張掄序 宗演跋〗
需要的文件名是:
X88n1658--重编诸天传(二卷)--〖宋.行霆述〗
J01nA042--大慧普觉禅师年谱(1卷)--〖宋 祖咏编 张抡序 宗演跋〗
谢谢!
作者: flashercs 时间: 2020-6-6 19:29
- @echo off
- cd /d "%~dp0"
- for /r . %%A in ("*—*.txt") do (
- for /f "delims=—" %%B in ("%%~nA") do (
- echo ren "%%A" "%%B%%~xA"
- ren "%%A" "%%B%%~xA"
- )
- )
- pause
- exit /b
复制代码
作者: zaqmlp 时间: 2020-6-6 20:43
本帖最后由 zaqmlp 于 2020-6-7 13:07 编辑
- <# :
- cls
- @echo off
- mode con lines=5000
- cd /d "%~dp0"
- powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%~dp0'"
- pause
- exit
- #>
- $path=$args[0];
- $txtfile=$path+"a.txt";
- if(-not (test-path -liter $txtfile)){Write-host ('"'+$txtfile+'" not found');exit;};
- $text=[IO.File]::ReadAllLines($txtfile,[Text.Encoding]::Default);
- $files=@(dir -liter $path -recurse|?{$_ -is [System.IO.FileInfo]});
- for($i=0;$i -lt $files.length;$i++){
- for($j=0;$j -lt $text.Count;$j++){
- $arr=$text[$j].split('—');
- if($arr.length -ge 2){
- if($files[$i].BaseName.Contains($arr[1])){
- $newname=$arr[0]+$files[$i].Extension;
- $newfile=$files[$i].Directory.FullName+'\'+$newname;
- write-host $files[$i].FullName;
- write-host '-->';
- write-host $newname;
- write-host '';
- mv -liter $files[$i].FullName $newfile;
- break;
- };
- };
- };
- }
复制代码
作者: lxh623 时间: 2020-6-7 07:38
flashercs 发表于 2020-6-6 19:29
文本a是哪里?谢谢!
作者: flashercs 时间: 2020-6-7 08:51
回复 4# lxh623 - @echo off
- cd /d "%~dp0"
- set filea="文本a.txt"
- for /f "usebackq tokens=1,2 delims=—" %%I in (%filea%) do (
- for /r . %%A in ("%%J*.txt") do (
- echo ren "%%A" "%%I%%~xA"
- ren "%%A" "%%I%%~xA"
- )
- )
- pause
- exit /b
复制代码
作者: lxh623 时间: 2020-6-7 10:23
回复 5# flashercs
请查收!
谢谢。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |