我那个媳妇啊,典型的只管照不管 理,32G的卡竟然被弄满了。

费好大劲好不容易整理到电脑上,可是都是数字名字,看着都头疼,索性整理下。

首先安装tcl编译环境tcl86,度娘搞的,然后开动:

 proc call_Deal {paths str} {
cd $paths
set strList ""
catch {set strList [glob *.*]}
set strreg "$str\(\[0-9\]\[0-9\]\)"
foreach strLine $strList {
if {[regexp $strreg $strLine "" strMonth]} {
set strtemp "$paths/$str$strMonth"
if {[file exists $strtemp]} {
#
} else { file mkdir $strtemp
}
file copy -force "$paths/$strLine" "$strtemp/$strLine"
file delete "$paths/$strLine"
}
}
}
proc main {} {
set path "E:\\"
set year ""
cd $path
set strList [list]
catch {set strList [glob *]}
foreach strLine $strList {
if {-1 != [string first $year $strLine]} {
append path $strLine
break
}
}
set year "" call_Deal "$path\\$year" $year
#set year "2017"
#call_Deal "$path\\$year" $year
#set year "2016"
#call_Deal "$path\\$year" $year
#set year "2015"
#call_Deal "$path\\$year" $year
#set year "2014"
#call_Deal "$path\\$year" $year }
set strErrInfo ""
if {[catch {main} strErrInfo]} {
error "error = $strErrInfo"
}

1-19行定义了一个处理函数,总体思路就是把文件名中的年月匹配出来然后添加到目录后面作为文件路径,如果路径不存在就创建,然后拷贝文件到新目录里,删除旧文件。

22-31是因为我使用的编码方式调用的时候识别不了中文,所以处理下;如果直接双击脚本是不需要的,可直接运行。

家里那台电脑CPU是04年的,照片的处理还是比较快的,就是视屏太慢了,整个跟拷贝时间差不太多,代码也没有经过优化,草稿就这样了,功能没问题。

glob函数找的是所有文件,也可以进行后缀过滤,因为我拷贝的文件里只有照片和视频,所以匹配了所有文件。

Tcl脚本整理照片的更多相关文章

  1. Modelsim仿真tcl脚本与wave.do文件

    Modelsim的仿真,如果一直使用图形界面建工程,编译,仿真,一个个加入观察波形的话,未免复杂了一些,尤其是当工程较大,需要观察的信号较多时,下面贴出一些常用的tcl脚本命令和wave.do常用语法 ...

  2. 使用Tcl脚本分配FPGA管脚

    自己主动生成Tcl文件 Project -> Generate Tcl File for Project... 弹出例如以下对话框.设置脚本路径. 编辑引脚 使用set_location_ass ...

  3. Quartus16.0如何使用TCL脚本

    前言 TCL脚本语言在EDA工具中使用频繁,本文主要介绍使用TCL脚本文件进行引脚分配,避免手动分配以及分配出错: 流程 1.准备好你的TCL脚本文件,举个栗子(脚本文件内容): 2.在Quartus ...

  4. Modelsim中使用TCL脚本编写do文件实现自动化仿真

    通常我们使用Modelsim进行仿真,是通过图形界面点点点来进行操作,殊不知Modelsim完美支持TCL脚本语言及批处理命令do文件.简单来说就是从你修改完代码后到你重新编译把需要的信号拉出来查看, ...

  5. modelsim如何使用tcl脚本来写编译文件

    对于modelsim进行仿真,可以通过GUI来进行仿真,当然更加快速的方法可以使用TCL脚本文件进行快速仿真. Modelsim采用TCL脚本文件仿真的具体流程如下所示:      具体的操作步骤如下 ...

  6. TCL脚本语言基础介绍

    Tcl简介(一):Tcl 语法 Tcl 语法 Tcl是一种很通用的脚本语言,它几乎在所有的平台上都可以释运行,其强大的功能和简单精妙的语法会使你感到由衷的喜悦,这片文章对 Tcl有很好的描述和说明.如 ...

  7. 在Quartus中如何使用TCL脚本文件配制管脚

    quartus软件分配管脚的方法有两种,一是选择菜单“assignments->pins”进入管脚分配视图手动分配:第二种方法是利用tcl脚本文件自动分配.这里我来介绍第二种方法. 1.生成tc ...

  8. 28nm工艺下,自动生成管脚排列文件,给设计加PAD,并在PAD上面打Label的流程(含Tcl脚本)

    本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...

  9. ICC中用Tcl脚本给版图中的Port/Terminal加Label的方法

    本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...

随机推荐

  1. Windows磁盘映射读写远程主机文件

    执行CMD命令做磁盘映射:net use X: \\172.17.0.1\D$\test Password /USER:Administrator Java调用CMD String cmd = &qu ...

  2. 单源最短路——Dijkstara算法

    算法基本思想:每次找到离源点最近的一个顶点,然后以该顶点为中心进行扩展,最终得到源点到其余所有点的最短路径. 1.将所有的顶点分为两个部分:已知最短路程的顶点集合P和未知最短路径的顶点集合Q 2.设置 ...

  3. AUTEL MaxiSYS Pro MS908P Diagnostic System with WiFi Update Online

    The MaxiSYS? Pro has been designed to be the go-to tool for the professional technician who performs ...

  4. 《CSS世界》读书笔记(二)

    <!-- <CSS世界> 张鑫旭著  --> 块级元素:水平流上只能单独显示一个元素 <li>元素默认的display值是list-item,是块级元素 块级盒子( ...

  5. 【题解】Luogu SP1435 PT07X - Vertex Cover

    原题传送门 求树的最小点覆盖,就是一个树形dp 类似于没有上司的舞会 dp的状态为\(f[i][0/1]\),表示i节点是否选择 边界是\(f[x][0]=0\),\(f[x][1]=1\) 转移方程 ...

  6. bzoj1001狼抓兔子 对偶图优化

    bzoj1001狼抓兔子 对偶图优化 链接 https://www.lydsy.com/JudgeOnline/problem.php?id=1001 思路 菜鸡总是要填坑的! 很明显让你求网格图的最 ...

  7. MyBio小隐本记注册破解

    既然开始了,就把这一个系列的都破了算了,这次主角小隐本记MyBio 和WDTP的原理是差不多的,先把软件界面换成e文,然后写了15个记录后提示注册,一样的路子,直接跳过注册窗口的弹出就好了 然后查壳一 ...

  8. ARM内核版本号和SOC版本号

    原博:https://blog.csdn.net/wxywxywxy110/article/details/78764988 内核版本号                   SoC版本号        ...

  9. Android 开发版本统一

    一.概述 对于 Android 开发版本的统一涉及到的东西就是 Gradle 中的全局设置,我们通过配置 gradle 也就是编写 Groovy 代码将开发中的版本号设置为全局参数.这样就能够在 mo ...

  10. 天地图常用WMTS配置参数

    wmts常用参数 var matrixIds = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', ...