我可以通过 Unix 系统服务针对 zOS 数据集运行 grep 吗?

我可以通过 Unix 系统服务针对 zOS 数据集运行 grep 吗?

我想针对 zOS 数据集运行搜索,并且我知道如何编写 grep 命令。我可以通过 Unix 系统服务访问机器,如何从该环境处理数据集?

答案1

无需先 cp。您可以 cat、tail、grep 等。要记住的是特殊引号,并且 DSN 前面有两个斜杠:

cat“//'s052WX.EO.REXX(MYREXXSOURCE)'”| grep 解析

如果您查看 UNIX 命令参考手册中的 cp 命令,则会发现更多信息。

答案2

我们谈论的数据集有多大?
Unix 系统服务cp命令可以将数据集作为源,将 Unix 文件(或目录)作为目标,因此可以想象,如果数据集足够小,您可以将其复制到文件中并grep随心所欲地处理。

另外,如果你可以ISPF在 z/OS 机器上打开数据集,你可能需要考虑使用查找索引(它为 ISPF 提供了基本的正则表达式功能)——但我自己从未使用过它,所以我不能保证它是否有效。

答案3

现在你可以使用dgrep命令

正如手册所述:

“在所有数据集(分区和顺序)中搜索与一个或多个数据集模式匹配的模式”

语法:

dgrep [-hinvd] [-C<num>] <pattern> [<dataset-pattern>]+
     -h: syntax
     -i: ignore case
     -n: display line numbers
     -v: print names of datasets being searched
     -d: print debug messages
     -C: display <num> lines of context around a match

例如:

$ dgrep DSALET36 IBMUSER.*.ISPPROF

IBMUSER.SYSTEM.ISPF.ISPPROF                 ISRLLIST   34

更多应用和示例: 这里

答案4

  • z/OS 支持 UNIX (单一 UNIX 规范) API 和应用程序通过美国海军尼克斯年代系統年代服务)。
  • Open Group 认证 z/OS 为兼容 UNIX 操作系统 – 具有 UNIX/Linux 风格的分层 HFS 和 zFS 文件系统。

相关内容