前日在tc中批量重命名出现错误,几日后才发现,已经无法撤销,找到日志,编写了一个ahk工具进行反向操作
示例
Gui, Add, Edit, w300 h200 vMyEdit, ; 创建一个宽度为300,高度为200的编辑框,变量名为MyEdit
Gui, Add, Button, w100 gButtonClick,撤销 ; 创建一个宽度为100的按钮,点击触发ButtonClick函数
Gui, Show, w400 h300,根据log撤销tc重命名 ; 显示GUI,宽度为400,高度为300,标题为"GUI 示例"
return
ButtonClick:
Gui, Submit, NoHide ; 提交GUI中的控件值
log:=lose:=""
Loop, Parse,MyEdit, `n
{
line := A_LoopField ; 获取当前行的内容
if (!InStr(line,"移动"))
Continue
src_path:=RegExReplace(line,"^\d{4}/\d{2}/\d{2}\s\d{2}:\d{2}:\d{2}:\s移动:\s(.+?)->\s(.+)","$2")
dest_path:=RegExReplace(line,"^\d{4}/\d{2}/\d{2}\s\d{2}:\d{2}:\d{2}:\s移动:\s(.+?)->\s(.+)","$1")
if (FileExist(src_Path)) ; 检查源文件夹是否存在
{
if (!FileExist(dest_path)){
FileMove, %src_path%, %dest_path% ; 移动/重命名文件夹
log.=src_path " ->" dest_path " success`r`n"
}
else
lose.=dest_path "已经存在,不做操作"
}
else
lose.=src_path "文件并不存在`r`n"
}
MsgBox,% log
if (!lose)
MsgBox,% lose
return
GuiClose:
ExitApp
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。