gbhsu
发表于 2011-8-14 11:04:30
好,不错,路过!
cindy_fisher
发表于 2011-12-24 20:04:27
mikewolf2k 发表于 2010-12-21 08:18 static/image/common/back.gif
这个用脚本文件就可以解决了,然后用dos命令中的for in do 自动一个个的打开dwg文件并且执行这个脚本。
您好,现在能用脚本文件执行打开文件夹中的所有DWG文件,然后进行命令吗。
最近需要给200多张图纸写签名,就用了脚本,感觉很好用,但在文件名上稍微费了点事,因为要把文件夹所有的文件名复制到EXCEL中,然后,在前面写OPEN,后面在写TXT的命令。
谢谢。
mikewolf2k
发表于 2011-12-26 08:37:38
cindy_fisher 发表于 2011-12-24 20:04 static/image/common/back.gif
您好,现在能用脚本文件执行打开文件夹中的所有DWG文件,然后进行命令吗。
最近需要给200多张图纸写签 ...
for %1 in (c:\temp\*.dwg) do acad %1 /b"script"
cindy_fisher
发表于 2011-12-28 12:58:29
mikewolf2k 发表于 2011-12-26 08:37 static/image/common/back.gif
for %1 in (c:\temp\*.dwg) do acad %1 /b"script"
没明白这个意思,能说说吗
mikewolf2k
发表于 2011-12-29 08:27:12
cindy_fisher 发表于 2011-12-28 12:58 static/image/common/back.gif
没明白这个意思,能说说吗
把所有要操作的dwg文件放在某目录下(比如c:\temp),然后进入dos窗口执行以上命令。
script为已经写好的脚本文件内容,执行预操作的命令,最后记得存盘退出。
这样会将目录下所有dwg文件一一打开,执行脚本命令。由于脚本最后是存盘退出,这样所有的dwg就会一个接一个的打开关闭继续下一个。
详情请查阅dos命令。
vlisp2012
发表于 2012-1-1 21:40:29
楼上的很强大。学习了!!!!!!!!!!!!!1
jfxia
发表于 2012-1-7 15:50:02
本帖最后由 jfxia 于 2012-1-7 15:57 编辑
把命令中的批处理文件的下一行改为以下就可实现清理功能
(princ (strcat "open \"" x "\"\n" "zoom e purge a * n qsave close\n") sff)
我多此一举了,11楼已有了清理的功能
cindy_fisher
发表于 2012-1-9 15:49:50
mikewolf2k 发表于 2011-12-29 08:27 static/image/common/back.gif
把所有要操作的dwg文件放在某目录下(比如c:\temp),然后进入dos窗口执行以上命令。
script为已经写好的 ...
您好,
for %1 in (c:\abcd\*.dwg) do acad %1 /b"Circle 0,0 50 qsave close”
我想用上面的句子给abcd文件夹里的所有图纸在0,0坐标画个圆,然后存盘,退出,结果程序只是把文件打开了,不执行画圆,关了之后,又自己打开另外一张,请问
(1)这个语句请求修改,谢谢
(2)如果脚本文件一次需要在图纸中进行几个command,我们会在记事本上把命令一行行写出来如下,如果在用for in do是写在一行还是怎么着,谢谢。
open "drawing1"
circle 0,0 50
line 0,0 50,50
qsave
close
(3)运行dos命令步骤:在autoCAD中shell--for in do语句还是在运行中输入cmd调出dos窗口写上for in do 语句,因为我的语句不正确,所以哪个方式都没成功,请达人指教,谢谢。
(4)网上搜了好多关于dos命令在autocad中的使用,也没多少资料,请达人指教相关学习资料,谢谢。
Andyhon
发表于 2012-1-9 17:04:38
Ref:
http://en.allexperts.com/q/AutoCAD-1029/Running-script-AutoCAD-start.htm
另:
以 Batch Call Acad.exe 会造成 Acad.exe的新process 耗费启动时间,
应改由 命令列 启动 Script...
详帮助or官网
mikewolf2k
发表于 2012-1-10 09:06:01
cindy_fisher 发表于 2012-1-9 15:49 static/image/common/back.gif
您好,
for %1 in (c:\abcd\*.dwg) do acad %1 /b"Circle 0,0 50 qsave close”
我想用上面的句子给abc ...
1. /b参数后面是脚本文件的文件名,不是内容。把脚本命令写入一个文本文件,文件后缀为scr,比如aa.scr,格式跟在acad命令行输入一模一样,比如:
circle
0,0
50
qsave
close
最后的命令为for %1 in (c:\abcd\*.dwg) do acad %1 /b"aa"
脚本文件可以在acad中的运行脚本功能测试。
2. for in do的功能是依次打开dwg文件,至于打开后做什么,是由脚本文件定。
3. 在dos窗口执行吧。acad中的shell没用过。
4. 另外提醒一下,需要将acad的捕捉功能去掉,否则定位点的时候可能会被吸附到其它位置上去。
页:
1
2
3
4
[5]
6
7
8
9
10
11
12
13