2015-12-07 38 views
0

我想使用REXX将加载模块从一个pds复制到另一个如何使用rexx复制加载模块?

+1

您是否试过阅读[IEBCOPY]的文档(https://www-01.ibm.com/support/knowledgecenter/#!/SSLTBW_2.1.0/com.ibm.zos.v2r1.idau100/iebcopy.htm )和[在REXX中分配数据集](https://www-01.ibm.com/support/knowledgecenter/#!/SSLTBW_2.1.0/com.ibm.zos.v2r1.ikjc300/create.htm)? – cschneid

回答

0

正如@cshneid说,你可以使用IEBCOPY在REXX使用IEBCOPY基本相同,但JCL:

  • 使用TSO的Alloc分配文件
  • 呼叫/调用程序

如果在ISPF下运行,您可以使用LMCOPY。大致以下应该工作,您可能需要在数据ID上发出LMOPEN/LMClose以及?

Address ISPEXEC 
'LMINIT DATAID(DIDFrom) Dataset(in.data.set)' 
'LMINIT DATAID(DIDTo) Dataset(to.data.set)' 
'LMCOPY FromId('DIDFrom') FROMMEM(mymem) toId('DIDTo') toMem(newMemberName)' 
'LMFREE DATAID(DIDFrom)' 
'LMFREE DATAID(DIDto)' 

如果运行的前景,用于有优势,因为他们“协调”有与其他所有用户 - ISPF不太可能破坏PDS目录行动ISPF服务。不知道这是否是一个优势。

+0

对于加载模块,远离IEBGENER/SORT Copy/IDCAMS repro。 PDS目录条目中有很多信息不会被复制。它们也不适用于PDSE(程序对象);复制它们的唯一方法是使用IEBCOPY或使用IEBCOPY(ISPEXEC LMCOPY)下的程序。有一个内部系统调用(由IEBCOPY使用),但为了获得文档,您必须支付一个神话般的(可能现在在小数点左边的6位数)量来获得一本名为DFSMS高级定制的书。 – zarchasmpgmr

+0

其加载模块,并且pds需要为U格式,因此LMCOPY不能正常工作.... – monkey

0

仅仅使用REXX你想要做的事情是不可能的,但是,你可以调用IEBCOPY(或者你的站点等价物)为你执行任务。 您可能想要调查像IEBCOPY这样的调用程序并将适当的控制卡传递给您执行您的任务。

1

您可以从Rexx中调用IEBCOPY,在调用IEBCOPY之前将相应的数据集分配给相应的ddname。

我无法提供示例,因为我没有设施/访问权限。

请注意,这样做可能会限制您的终端/会话。

您也可以进入更复杂的解决方案来构建和提交批处理作业,甚至可能有面板前端,从而驱动文件剪裁/骨架。