繁体   English   中英

从cmd运行命令,但不在批处理文件中运行

[英]command is run from cmd but not in batch file

我有一个.bat文件,其中使用sqlldr将数据从csv插入到oracle中,但是当我双击.bat文件时,什么也没有发生。 但是,当我将其复制到cmd中并运行时,它将执行数据。 我不知道发生什么错误或路径错误。

批处理文件

P:\Users\ashique.sheikh\VMI>sqlldr upi/upi  DATA=P:\Users\ashique.sheikh\VMI\test.csv CONTROL=Insert.ctl LOG=Insert.log.

CTL文件

OPTIONs(SKIP=1)
LOAD DATA 
INFILE "P:\Users\ashique.sheikh\VMI\test.csv"
INSERT into table DETAIL 
REPLACE
fields terminated by ','
(ID,NAME,ADDRESS,CITY,MOBILE)

也尝试将路径添加到ctl参数。 恐怕Windows会在路径中搜索insert.ctl,但找不到它。

尝试在bat文件中使用此行:

start "" cmd.exe /c sqlldr upi/upi DATA=P:\Users\ashique.sheikh\VMI\test.csv CONTROL=Insert.ctl LOG=Insert.log

某些WinodwsXP在运行cmd.exe时会出现问题,因为它们的SET变量不同,而在运行.bat文件时会出现问题。 这是防病毒沙箱之类的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM