找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 570|回复: 14
打印 上一主题 下一主题

如何让批处理弹出的DOS窗口自动自动关闭

[复制链接]

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
跳转到指定楼层
1#
发表于 2014-9-20 12:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

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

x
使用批处理来自动清除指定后缀的文件,但文件清除后批处理弹出的DOS窗口不会自动关闭,需要通过手动按下任意键来关闭DOS窗口,有什么方法能让DOS窗口一闪而过自动关闭?另外,如何使用SKILL调用这个批处理来自动删除文件?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏4 支持!支持! 反对!反对!

117

主题

2352

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
13799

最佳敬业奖

推荐
发表于 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:54
谁画出这天地 又画下我和你

117

主题

2352

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
13799

最佳敬业奖

2#
发表于 2014-9-20 20:37 | 只看该作者
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system xxx")方式执行DOS命令。

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
3#
 楼主| 发表于 2014-9-20 21:42 | 只看该作者
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...

感谢deargds的热心回答,领悟了,问题也解决了,实在感谢!!!

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
4#
 楼主| 发表于 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删除文件相关命令是哪个?

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
5#
 楼主| 发表于 2014-9-21 14:08 | 只看该作者
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...

版主能否给个SKILL删除文件相关命令的简单例子参考下,刚学习SKILL找不到你说的那个函数,没有例子是在没辙啊···感谢啦~

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
6#
 楼主| 发表于 2014-9-21 15:33 | 只看该作者
deargds 发表于 2014-9-20 20:37
1.看下批处理后面是否有pause语句,删除即可 2.skill有删除文件相关命令,另外也可以使用axlShell("system  ...

版主,如何使用skill创建批处理文件啊,能否给个例子

117

主题

2352

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
13799

最佳敬业奖

7#
发表于 2014-9-22 08:53 | 只看该作者
這侽孓譙悴丶 发表于 2014-9-20 22:37
再请教个问题,使用axlShell("system xxx")方式执行DOS命令,批处理文件必须放在当前PCB目录下才能执行 ...

你调用文件的绝对路径就行了.
谁画出这天地 又画下我和你

117

主题

2352

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
13799

最佳敬业奖

8#
发表于 2014-9-22 08:58 | 只看该作者
這侽孓譙悴丶 发表于 2014-9-21 14:08
版主能否给个SKILL删除文件相关命令的简单例子参考下,刚学习SKILL找不到你说的那个函数,没有例子是在没 ...

以下两个函数都可以.
  1. deleteFile("./test/out.1")
  2. axlRecursiveDelete("./BAK")
复制代码
谁画出这天地 又画下我和你

117

主题

2352

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
13799

最佳敬业奖

9#
发表于 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)
复制代码
谁画出这天地 又画下我和你

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
10#
 楼主| 发表于 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

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
11#
 楼主| 发表于 2014-9-22 23:37 | 只看该作者


使用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" 这 语句写入到文件中去??

34

主题

1321

帖子

7126

积分

六级会员(60)

Rank: 6Rank: 6

积分
7126
13#
 楼主| 发表于 2014-9-23 23:53 | 只看该作者
deargds 发表于 2014-9-23 08:41
使用\\或/代替路径中的\就行了.


感谢版主耐心与热心的回复,改为:fprintf(p "del /f /s /q \".\\*.txt\"\n")就可以了,实在感谢,功能实现了,谢谢!

1

主题

209

帖子

173

积分

二级会员(20)

Rank: 2Rank: 2

积分
173
14#
发表于 2015-8-21 12:50 | 只看该作者

支持楼主原创  非常感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-16 09:51 , Processed in 0.070604 second(s), 38 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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