bat文件刷屏,请规范命名

bat文件执行数据导出(exp)的刷屏现象oracle
今天批量导出指定表的数据时,写成了一个bat文件,文件名为exp.bat。双击bat文件后,屏幕出现刷屏现象,数据无法导出。

bat文件如下:

exp user/password@db tables=STAT file=d:\STAT.dmp buffer=1024000
exp user/password@db tables=LOST file=d:\LOST.dmp buffer=1024000
exp user/password@db tables=TRANS file=d:\TRANS.dmp buffer=1024000

。。。。。。。。。。。

双击后bat文件出现刷屏现象,屏幕一直输出第一句导出语句,数据无法导出。

E:\>exp user/password@db tables=STAT file=d:\STAT.dmp buffer=1024000
E:\>exp user/password@db tables=STAT file=d:\STAT.dmp buffer=1024000

。。。。。。。。。。。

单独copy一条语句,放到cmd下运行。导出成功。到底是什么问题,确实让人疑惑。。。。

修改bat文件,在文件中指定exp 路径。

E:\oracle\product\10.2.0\client_1\BIN\exp.exe user/password@db tables=STAT file=d:\STAT.dmp buffer=1024000
E:\oracle\product\10.2.0\client_1\BIN\exp.exe user/password@db tables=LOST file=d:\LOST.dmp buffer=1024000
E:\oracle\product\10.2.0\client_1\BIN\exp.exe user/password@db tables=TRANS file=d:\TRANS.dmp buffer=1024000

。。。。。。。。。。。

双击文件导出成功。



到这问题似乎已解决,但这究竟是什么原因呢?况且以前导出也没出现过这种情况啊。。。

好,下面来测试一下,修改exp.bat文件,增加一个暂停操作。在第一行添加pause,让文件一运行就先暂停。如下

pause
exp user/password@db tables=STAT file=d:\STAT.dmp buffer=1024000
exp user/password@db tables=LOST file=d:\LOST.dmp buffer=1024000
exp user/password@db tables=TRANS file=d:\TRANS.dmp buffer=1024000

。。。。。。。。。。。

双击bat文件,屏幕输出红色部分。按键后输出蓝色部分,继续按输出黑色部分。
d:\我的文档\桌面>pause
请按任意键继续. . .

d:\我的文档\桌面>exp user/password@db tables=STAT file=d:\STAT.dmp buffer=102400
0

d:\我的文档\桌面>pause
请按任意键继续. . .

d:\我的文档\桌面>exp user/password@db tables=STAT file=d:\STAT.dmp buffer=102400
0

d:\我的文档\桌面>pause
请按任意键继续. . .


好,终于发现了,只写了一个暂停,可这bat文件在不停的暂停。暂停被循环调用了。

原来执行到pause后,我们按任意键,会执行下一个语句“exp user/password@db tables=STAT file=d:\STAT.dmp buffer=1024000”,但是调用exp命令时,不是调用oracle目录下的exp.exe。而是调用我的exp.bat,所以再次进入了暂停,形成了死循环。

这就是为啥出现了刷屏的现象。。。(这也好,以后想刷屏的话。把这脚本拿出来就行了。哈)

谨记规范命名,不能再写成exp.bat

原文地址:http://qiu.fengqi.blog.163.com/blog/static/31729042201022824526403
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值