You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Rexx查找PDS中匹配指定字符串的Member 脚本问题咨询

REXX读取PDS Member并搜索指定字符串脚本修正

以下是修复问题后的可运行版本,同时补充了容错逻辑和中文注释:

/* REXX */
/* 分配要读取的PDS Member,注意替换为实际的数据集和Member名称 */
"ALLOC FILE(input) DA('你的PDS全称(要读取的MEMBER名)') SHR REUSE"
/* 捕获分配异常,避免数据集不存在时后续逻辑报错 */
if RC <> 0 then do
    say '数据集分配失败,返回码:'RC
    exit 8
end
/* 读取整个Member内容到input.数组中,读取完成后关闭文件 */
"EXECIO * DISKR input (STEM input. FINIS"
/* 释放分配的文件资源 */
"FREE FILE(input)"

/* 遍历读取到的所有行 */
do i = 1 to input.0
    /* 检查当前行是否包含指定字符串'met,',可根据需求修改搜索内容 */
    if POS('met,', input.i) > 0 Then
        /* 匹配到字符串的逻辑,这里示例输出行号和匹配到的内容 */
        say '第'i'行匹配成功,内容:'input.i
    else
        /* 不需要处理未匹配行可以直接删除这行,用nop跳过即可 */
        nop
end

原脚本的问题说明

  • 原输出语句say Zeile gefunden没有给字符串加引号,REXX会把Zeile、gefunden识别为未定义变量,运行时会直接输出变量名,不符合预期
  • 原EXECIO语句中对input的引用不需要额外拼接引号,直接写EXECIO * DISKR input即可
  • 原逻辑每行不管匹配与否都输出提示,批量扫描时会产生大量冗余输出,你可以根据需求调整未匹配分支的逻辑
  • 原脚本中的'.....(MEMBER)'为占位符,需要替换为你实际的数据集全称,要符合MVS数据集命名规则,避免分配失败

内容的提问来源于stack exchange,提问作者user16332592

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 13:24:08