Question: I have a search I'd like to run against a zOS dataset, and I know how to form the grep command. I have access to the machine via Unix system services, how to I address a dataset from that environment?

Answer: 
How big a data set are we talking about?  

The Unix system services `cp` command can take data sets as a source, and a Unix file (or directory) as a target, so conceivably if the data set is small enough you can copy it into files and `grep` away to your heart's content.

As an alternative, if you can open your data set in `ISPF` on the z/OS machine you may want to consider using [FINDRX](http://www.sillysot.com/ftp/findrx.txt) (which gives ISPF basic regex capability) -- I've never used it myself though so I can't vouch for it working or not.
Nowadays you can use `dgrep` command

As the manual says:

> 
> "Search for a pattern across all datasets (partitioned and sequential) matching one or more dataset patterns"
> 
> 
> 

The syntax:

```
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

```

For example:

```
$ dgrep DSALET36 IBMUSER.*.ISPPROF

IBMUSER.SYSTEM.ISPF.ISPPROF                 ISRLLIST   34

```

More applications and examples:
[here](https://makingdeveloperslivesbetter.wordpress.com/2017/11/16/working-with-mvs-datasets-from-uss/)