明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4100|回复: 11

如何快速对文件批量改名?

[复制链接]
发表于 2007-8-13 18:33:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2007-8-13 18:34:49 编辑

如何快速对文件批量改名?
我这里 提供 一个例子,用了doslib,
这样的话就可以按照自己要求的方式改名了。
  1. (defun acadver (/ version)
  2.   (setq version (getvar "acadver"))
  3.   (setq version (substr version 1 2))
  4.   (cond
  5.     ( (= version "15")
  6.       (arxload "c:\\program files\\DOSLib 6.1\\doslib15.arx");for R2000-2002
  7.     )
  8.     ( (= version "16")
  9.       (arxload "c:\\program files\\DOSLib 6.1\\doslib16.arx");for R2004-2006
  10.     )
  11.     ( (= version "16")
  12.       (arxload "c:\\program files\\DOSLib 7.5\\doslib17.arx");for R2007-2008
  13.     )
  14.   )
  15. )
  16. (acadver)
  17. (defun c:test (/ lst OldName NewName)
  18.   (setq lst (dos_dir "e:\\highflybird\\lisp\\qq\\*.重命名" 1));我要改名的文件路径及其类型
  19.   (foreach n lst
  20.     (setq OldName (strcat "e:\\highflybird\\lisp\\qq\" n))
  21.     (setq NewName (vl-string-subst ".rar" ".重命名" OldName))
  22.     (dos_rename OldName NewName)
  23.   )
  24.   (princ)
  25. )
这个例子是源于用qq下载时,会对rar类型的文件重命名,所以当文件数目较多时,有必要用批量改名程序。
当然你也可以按照你自己的方式来改名。譬如说从网站上下载了一些都是数字为名字的文件,而这些数字又不是连续的,这时候如果是rar文件类型的话,就可能出现无法解压的现象。用批量改名就显得很有必要了。
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2020-5-28 18:55:14 | 显示全部楼层
正在学习这个,谢谢你
发表于 2007-8-14 00:51:00 | 显示全部楼层
从xdcad下载的多个rar文件我一般用一个批处理.
(下面代码保存为*.bat,拷贝到下载文件的目录.双击执行)
  1. ren *-*.part*. xdcad-*.part*.rar
复制代码
发表于 2007-8-14 10:39:00 | 显示全部楼层

请问版主,doslib是不是需要安装呀,如果是的话,版主能不能提供一个程序呀

一直不知道这么DOSLIB怎么用,如果把使用方法能说的详细一点,先谢了。

 楼主| 发表于 2007-8-14 13:45:00 | 显示全部楼层
你可以搜索本论坛有关DOSLIB的话题。
发表于 2007-8-14 22:44:00 | 显示全部楼层

不错,支持下

以前我都是用ACDSEE改的

 楼主| 发表于 2007-8-15 11:00:00 | 显示全部楼层
当然不用doslib,也完全可以完成对文件的重命名,删除,拷贝,列出所有文件等操作。
下面是一个例子,能完成批量改文件后缀名的程序。
  1. (vl-load-com)
  2. (defun c:test (/ file path ext lst OldName NewName)
  3.   (if (setq file (getfiled "选择文件" "C:/" "" 8))
  4.     (progn
  5.       (setq path (vl-filename-directory file))
  6.       (setq ext (vl-filename-extension file))
  7.       (if ext
  8. ;;我要改名的文件路径及其类型
  9. (setq lst (vl-directory-files path (strcat "*" ext)))
  10. (setq lst (cdr (cdr (vl-directory-files path nil))))
  11.       )
  12.       (foreach n lst
  13. (setq OldName (strcat path "\" n))
  14. (if ext
  15.    (setq NewName (vl-string-subst ext ".rar" OldName))
  16.    (setq newName (strcat oldname ".rar"))
  17. )
  18. (vl-file-rename OldName NewName)
  19.       )
  20.     )
  21.   )
  22.   (princ)
  23. )

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2007-8-21 20:30:00 | 显示全部楼层
批量改文件的用VB做比较省事
发表于 2012-11-27 16:46:03 | 显示全部楼层
来了就留脚印,支持高飞鸟
发表于 2012-11-27 18:06:15 来自手机 | 显示全部楼层
也来学习学习。
发表于 2012-11-27 19:03:18 | 显示全部楼层
改天学习一下doslib。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-18 00:48 , Processed in 0.233765 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表