刘炎华 发表于 2020-7-16 23:48:19

快速备份图纸到指定目录

从明经上找到的一个好用功能,求大师修改下功能
希望备份后的文件能在指定的目录下.例如: D:\bakfile
源文件如下:

(defun c:bak nil
(cond
    ((= 1 (getvar 'DWGTITLED))
   (vl-mkdir (strcat (getvar 'DWGPREFIX) "备份"))
   (vl-file-copy
       (strcat (getvar 'DWGPREFIX) (getvar 'DWGNAME))
       (strcat (getvar 'DWGPREFIX)
               "备份\\"
               (cadr (fnsplitl (getvar 'DWGNAME)))
               (menucmd "m=$(edtime,$(getvar,DATE), YYYY-MO-DD HH-MM)")
               ".dwg"
       )
   )
   (princ "\n-->备份完成")
    )
    ((princ "\n-->没有保存"))
)
(princ)
)

xvjiex 发表于 2020-7-16 23:48:20

本帖最后由 xvjiex 于 2020-7-17 08:47 编辑

已经改好已设定默认D:\bakfile目录,可以不选择目录。



1291500406 发表于 2020-7-17 08:38:35

本帖最后由 1291500406 于 2020-7-17 11:17 编辑

;;楼上下载怎么还收币?
;;而且要的是一步bak命令即可,无需画蛇添足 默认路径、指定路径

(defun c:bak nil
(vl-load-com)(cond((= 1 (getvar "DWGTITLED")) (vl-mkdir"D:\\bakfile" )   
(vl-file-copy (strcat (getvar "DWGPREFIX") (getvar "DWGNAME"))
(strcat "D:\\bakfile\\"(cadr (fnsplitl (getvar "DWGNAME")))
(menucmd "m=$(edtime,$(getvar,DATE), YYYY-MO-DD HH-MM)") ".dwg" ))
(princ "\n-->备份完成")) (t(princ "\n-->没有保存")))(princ))

xvjiex 发表于 2020-7-17 08:51:20

本帖最后由 xvjiex 于 2020-7-17 08:53 编辑

已将改为按默认目录,不用再选择位置了(按右键直接在默认目录备份)。也可以自由选择(指定备份目录)。

664571221 发表于 2020-7-17 09:49:50

1291500406 发表于 2020-7-17 08:38
;;楼上下载怎么还收币?又不难
(defun c:bak nil
(vl-load-com)(cond((= 1 (getvar "DWGTITLED")) (vl- ...

另存为不是很香吗

664571221 发表于 2020-7-17 10:14:19

664571221 发表于 2020-7-17 09:49
另存为不是很香吗

有道理哦......

yangchao2005090 发表于 2020-7-17 10:35:07

xvjiex 发表于 2020-7-17 00:31
已经改好已设定默认D:\bakfile目录,可以不选择目录。

很好用,收藏了

xvjiex 发表于 2020-7-17 12:49:08

本帖最后由 xvjiex 于 2020-7-17 12:52 编辑

感谢您的采纳!如果不需要选择备份目录,以下文档加载就自动执行,命令也不用输入。如果中途还要备份,可以输入命令bak再备份。但是这个不能自由另选目录备份。
(defun c:bak nil
(vl-load-com)(cond((= 1 (getvar "DWGTITLED")) (vl-mkdir"D:\\bakfile" )   
(vl-file-copy (strcat (getvar "DWGPREFIX") (getvar "DWGNAME"))
(strcat "D:\\bakfile\\"(cadr (fnsplitl (getvar "DWGNAME")))
(menucmd "m=$(edtime,$(getvar,DATE), YYYY-MO-DD HH-MM)") ".dwg" ))
(princ "\n-->备份完成")) (t(princ "\n-->没有保存")))(princ)) (c:bak)

刘炎华 发表于 2020-7-17 13:09:03

非常感谢!

xvjiex 发表于 2020-7-17 13:23:30

《希望备份后的文件能在指定的目录下.例如: D:\bakfile》
刚开始我也采用最简单的,并已经明码回复解答了,后来发现这个指定目录并没有完全指定(个人理解),才重新编辑了。应该是我没有完全理解求助者的意思,也没有咨询求助者。
页: [1] 2
查看完整版本: 快速备份图纸到指定目录