EDA365电子工程师网

标题: 如何让批处理弹出的DOS窗口自动自动关闭 [打印本页]

作者: 這侽孓譙悴丶    时间: 2014-9-20 12:33
标题: 如何让批处理弹出的DOS窗口自动自动关闭
使用批处理来自动清除指定后缀的文件,但文件清除后批处理弹出的DOS窗口不会自动关闭,需要通过手动按下任意键来关闭DOS窗口,有什么方法能让DOS窗口一闪而过自动关闭?另外,如何使用SKILL调用这个批处理来自动删除文件?
作者: deargds    时间: 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system xxx")方式执行DOS命令。
作者: 這侽孓譙悴丶    时间: 2014-9-20 21:42
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...

感谢deargds的热心回答,领悟了,问题也解决了,实在感谢!!!
作者: 這侽孓譙悴丶    时间: 2014-9-20 22:37
本帖最后由 這侽孓譙悴丶 于 2014-9-20 23:18 编辑
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...


再请教个问题,使用axlShell("system xxx")方式执行DOS命令,批处理文件必须放在当前PCB目录下才能执行,我想把这个批处理文件放在一个固定的位置,在PCB中执行相应的SKILL命令就可以调用到这个批处理文件要怎么做,而不是每次都要把这个批处理文件拷贝到当前PCB目录下,这样很麻烦

skill删除文件相关命令是哪个?
作者: 這侽孓譙悴丶    时间: 2014-9-21 14:08
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...

版主能否给个SKILL删除文件相关命令的简单例子参考下,刚学习SKILL找不到你说的那个函数,没有例子是在没辙啊···感谢啦~
作者: 這侽孓譙悴丶    时间: 2014-9-21 15:33
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...

版主,如何使用skill创建批处理文件啊,能否给个例子
作者: deargds    时间: 2014-9-22 08:53
這侽孓譙悴丶 发表于 2014-9-20 22:37
再请教个问题,使用axlShell("system xxx")方式执行DOS命令,批处理文件必须放在当前PCB目录下才能执行 ...

你调用文件的绝对路径就行了.
作者: deargds    时间: 2014-9-22 08:58
這侽孓譙悴丶 发表于 2014-9-21 14:08
版主能否给个SKILL删除文件相关命令的简单例子参考下,刚学习SKILL找不到你说的那个函数,没有例子是在没 ...

以下两个函数都可以.
  1. deleteFile("./test/out.1")
  2. axlRecursiveDelete("./BAK")
复制代码

作者: deargds    时间: 2014-9-22 09:00
這侽孓譙悴丶 发表于 2014-9-21 15:33
版主,如何使用skill创建批处理文件啊,能否给个例子
  1. p = axlDMOpenFile("TEMP" "./temp.bat" "w")
  2. fprintf(p "echo Hello Wordl.\n")
  3. fprintf(p "pause\n")
  4. axlDMClose(p)
复制代码

作者: 這侽孓譙悴丶    时间: 2014-9-22 21:25
deargds 发表于 2014-9-22 08:53
你调用文件的绝对路径就行了.

调用批处理文件的绝对路径不行啊,使用绝对路径axlShell("system E:\cadence\SPB_15.5.1\share\local\pcb\skill\CLR_File.BAT")会报错:

W- *WARNING* (Parser): character found after backslash is not meaningful - system E:cadenceSPB_15.5.1sharelocalpcbl\pcb\skill\CLR_File.BAT
E-
E- axlShell("system E:\cadence\SPB_15.5.1\share\local\pcb\skill\CLR_File.BAT"
E-                                                                          ^
E- PARSER WARNING at line 5 column 74 of file camclear.il
作者: 這侽孓譙悴丶    时间: 2014-9-22 23:37
deargds 发表于 2014-9-22 09:00


使用fprintf函数向批处理文件中写入语句:del /f /s /q ".\*.txt"    代码:   fprintf(p "del /f /s /q ".\*.txt"\n")加载后命令栏总报错:E- fprintf(p "del /f /s /q ".\*.art"\n")
E-                                    ^
E- SYNTAX ERROR found at line 5 column 36 of file camclearfile1.il
E- *Error* lineread/read: syntax error encountered in input

del /f /s /q ".\*.txt" 这语句中哪些语法错了,要怎么修改才能把del /f /s /q ".\*.txt" 这 语句写入到文件中去??
作者: deargds    时间: 2014-9-23 08:41
這侽孓譙悴丶 发表于 2014-9-22 23:37
使用fprintf函数向批处理文件中写入语句:del /f /s /q ".\*.txt"    代码:   fprintf(p "del /f /s / ...

使用\\或/代替路径中的\就行了.
作者: 這侽孓譙悴丶    时间: 2014-9-23 23:53
deargds 发表于 2014-9-23 08:41
使用\\或/代替路径中的\就行了.


感谢版主耐心与热心的回复,改为:fprintf(p "del /f /s /q \".\\*.txt\"\n")就可以了,实在感谢,功能实现了,谢谢!
作者: kkman2000    时间: 2015-8-21 12:50

支持楼主原创  非常感谢!




欢迎光临 EDA365电子工程师网 (http://bbs.elecnest.cn/) Powered by Discuz! X3.2