批量重命名——硬链接方式

wils
wils Lv.2 潜力创作者

Lv.2潜力创作者

论坛里有大佬分享过,通过wps表格进行批量重命名

但新与旧名称的冲突,文件正在编辑不能修改,重命名失败如何恢复等问题,还是难以考虑周全

参考昨天的帖子:https://bbs.wps.cn/topic/85477

比如,需要修改“证据3:测试3.pdf”这个文件名,证据后面的数字要减2

  • wps右键批量重命名不够灵活

  • 脚本足够灵活,但大多数朋友不熟悉操作

  • 用表格重命名:

  • 如果用MoveFileA移动,需要考虑冲突等情况(比如先5->3再3->1就冲突了),难以安全的恢复原样

  • 如果用copyFileSync复制,是安全了,但又慢又浪费空间


今天突发奇想,能否以创建硬链接的方式,将文件创建副本到新文件夹

和复制操作的逻辑一样,但硬链接不真的读写数据,所以瞬间完成,也不占用硬盘空间

相当于硬盘上两个目录指向同一块内容,类似标签管理,同一个文件可以有多个标签

这样就可以避免很多问题:

  • 当一个文件正在被编辑,也可以创建他的硬链接,原文件不受影响

  • 当新名称和同目录里的旧名称一样,会导致覆盖或重命名失败,硬链接因为在新的目录里,不会遇到这个问题

  • 如果执行失败,直接删除新目录即可,完全不影响原目录

  • 硬链接只是硬盘上的目录,所以无论你删除旧目录还是删除新目录,另一份文件都是独立存在的正常的文件,不是快捷方式那种


做了个例子:https://pan.baidu.com/s/1jyCeStIImxUgLZ5NIJ1TEg?pwd=j6ek

使用方法:

  • 先点击文件夹按钮,选择需要重命名文件所在目录

  • 然后检查两个文本框,一个记录旧目录,一个记录新目录,可以手动修改新目录,但必须保证在同一块硬盘分区上

  • 现在旧文件名已经被读取到A列,请用你喜欢的方式,无论排序、筛选还是公式,在B列生成新文件名,不需要考虑执行顺序导致的冲突,只要保证B列内没有空或重复即可

  • 点击重命名按钮,会创建新目录,然后将A列文件重命名为B列,请检查结果,原目录没有被修改,可以作为备份,并不多占用磁盘空间

写的并不完善,比如没考虑嵌套文件夹的情况等

希望有朋友来尝试,发现问题还请回帖,我再修改

海南省
浏览 258
收藏
11
分享
11 +1
3
+1
全部评论 3
 
goodwatera
这个我熟,搞了适合自己的一整套,虽然还不完善。 当一个文件正在被编辑,来重命名就不应该被考虑。 把功能拆开就好了,很灵活。类似已经编号1,2,3,中间插入个新的2进去,变成1,2,3,4 还有数字前补0的等等,每个都单独出来 命名规则交给excel,重命名错了反正也就DE列互换再来一遍的事 A1直接放目录,连弹文件选择框都省了 个别符号需要检查一下
· 福建省
1
回复
wils
wilsLv.2 潜力创作者

Lv.2潜力创作者

厉害!
· 海南省
回复
 
user_19042982
好,自己动手,丰衣足食。
· 安徽省
1
回复