ebs前台调用脚本,实现在linux 下通过smbclient上传文件到windows共享目录

ebs前台调用脚本,实现在linux 下通过smbclient上传文件到windows共享目录

百度上有很多关于安装samba软件,以及创建windows共享目录的方法,可去参考,如下主要讲一下我在使用smbclient上传文件到windows共享盘的主要一些步骤,以及如何在ebs前台调用。

1.ebs前台设置请求
可执行
在这里插入图片描述

并发程序,指定一个参数,文件名
在这里插入图片描述
挂请求

2. 写一个脚本如下,命名为XXX.prog,上传到服务器目录如 $FND_TOP/bin
与定义的可执行中的应用对应
共享目录: //IP/dvc1_interface$/hr
访问共享目录的用户名密码文件: pws
存放格式为
username=aaa
password=bbb
需要上传的文件: /tmp/Employee_hr_oracle.csv
前台传过来的参数: $5
需要注意的是,主机类型的并发请求,系统内定了四个参数(用户名/密码,用户ID,用户名,当前请求号),用户传入参数应该从第五号开始,如 “$5”
-A /tmp/pws 也可以写作 -U 用户名%密码
脚本文件名必须指定后缀名为.prog(否则下一步Link生成的文件并发可执行将不能识别,报错No such file or directory);
在这里插入图片描述
3. 给脚本授可执行权限
cd $FND_TOP/bin
chmod +x ./ MLPUTFILE.prog
4. 使用link命令生成同名的可执行文件
link fndcpesr MLPUTFILE
操作完成会自动创建了一个同名(没有后缀名)的文件,这个文件将会被并发请求调用执行

主要遇到的问题:

  1. tree connect failed: NT_STATUS_BAD_NETWORK_NAME
    百度上说这个错误表示共享目录有误, 可能是目录不存在, 或者权限不对。但是我这些都没有问题。
    我的命令是在这里插入图片描述
    原因是\ip\dvc1_interface$是共享出来,如果要放在/hr,应该写成smbclient //10.47.10.30/dvc1_interface$ -U username%password -c “cd hr;lcd /tmp; put Employee_hr_oracle.csv”
    cd命令,切换远程目录;lcd命令,切换本地目录
  2. Error writing file: ERRSRV - ERRerror (Non-specific error code.)
    putting file Employee_hr_oracle.csv as \Employee_hr_oracle.csv (0.0 kb/s) (average 0.0 kb/s)
    这个报错是因为samba版本问题,公司的windows服务器是2016,旧samba是3.0.33,不能copy file,升级到 3.6.3 就可以了
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值