#はじめに
以下の記事で、teratermでUSSに接続すると色々便利なことがありますよ、という紹介をしましたが、REXX + シェル・スクリプトで実現できる便利な使い方をいくつか紹介します。
参考: z/OSのユーザー・インターフェースについて考える ~teraterm利用のすゝめ~
※筆者はシェル・スクリプトはそこそこ慣れ親しんでいるのですがREXXは全くの初心者です。そのため、USSからMVSへの連携部分について最低限必要な所のみREXXを使い、それ以外はシェル・スクリプトを使うという感じになっています。
※各ソースはGitHubにアップしてますのでご自由にお使いください。ただしエラーハンドリングとか細かいところは行き届いていないです。あくまで作業効率アップの補足ツールとしての位置づけですのであしからず。
#USSからSDSFコマンドを実行する
##SDSFコマンド実行用REXX
これは上の参考記事でも紹介したやつです。
出来る事:
USSからSDSFコマンドが実行できます。カタプロの実行など(S PROC)もできます。要はSDSFで/(スラッシュ)付で実行するコマンドが投入できます。
使い方:
$ sdsf.rex '<sdsf command>'
(SDSFコマンドの先頭にスラッシュ'/'は付けない!)
例:
$ sdsf.rex 'D A,L'
時刻を表示する「D T」コマンドの実行例
[CICS004@EPLEX1:/u/cics004/REXX] ./sdsf.sh D T
パスを通してalias切っておくと、こんな感じでも使えます。
[CICS004@EPLEX1:/u/cics004] sdsf D T
RC: 0
ISFMSG: COMMAND ISSUED
ISFMSG2.1 : ISF776I Processing started for action 1 of 1.
ISFMSG2.2 : ISF769I System command issued, command text: D T.
ISFMSG2.3 : ISF766I Request completed, status: COMMAND ISSUED.
ZOS1 2016264 16:00:13.05 ISF031I CONSOLE CICS004 ACTIVATED
ZOS1 2016264 16:00:13.05 -D T
ZOS1 2016264 16:00:13.05 STC04838 IEE136I LOCAL: TIME=16.00.13 DATE=2016.264 UTC: TIME=07.00.13 DATE=2016.264
##SDSFコマンドをまとめて投入するシェル・スクリプト
上のSDSF実行用REXXを使って、複数SDSFコマンドをまとめて実行するためのシェル・スクリプトです。
先頭のsdsf_rexx=$HOME/REXX/sdsf.rex
部分にて、SDSFコマンド実行用REXXのパスを適宜修正して下さい。
出来る事:
別途用意したSDSFコマンドのリスト(1行に1コマンドを記入したテキスト・ファイル)を読み込ませて逐次実行する。
使い方:
$ exec_command_list.sh <SDSF_command_list_file>
例:
$ exec_command_list.sh command_list_test.txt
[CICS004@EPLEX1:/u/cics004/Shell] cat command_list_test.txt
D T
D M=STOR
D OMVS
[CICS004@EPLEX1:/u/cics004/Shell] ./exec_command_list.sh command_list_test.txt
0 : D T
1 : D M=STOR
2 : D OMVS
number of commands: 3
************************************************************************************
Next Command (1/3): D T
************************************************************************************
RC: 0
ISFMSG: COMMAND ISSUED
ISFMSG2.1 : ISF776I Processing started for action 1 of 1.
ISFMSG2.2 : ISF769I System command issued, command text: D T.
ISFMSG2.3 : ISF766I Request completed, status: COMMAND ISSUED.
ZOS1 2016264 16:01:43.01 ISF031I CONSOLE CICS004 ACTIVATED
ZOS1 2016264 16:01:43.01 -D T
ZOS1 2016264 16:01:43.01 STC04838 IEE136I LOCAL: TIME=16.01.43 DATE=2016.264 UTC: TIME=07.01.43 DATE=2016.264
************************************************************************************
Next Command (2/3): D M=STOR
************************************************************************************
RC: 0
ISFMSG: COMMAND ISSUED
ISFMSG2.1 : ISF776I Processing started for action 1 of 1.
ISFMSG2.2 : ISF769I System command issued, command text: D M=STOR.
ISFMSG2.3 : ISF766I Request completed, status: COMMAND ISSUED.
ZOS1 2016264 16:01:44.06 ISF031I CONSOLE CICS004 ACTIVATED
ZOS1 2016264 16:01:44.06 -D M=STOR
ZOS1 2016264 16:01:44.25 IEE174I 16.01.44 DISPLAY M 032
REAL STORAGE STATUS
ONLINE-NOT RECONFIGURABLE
0M-8192M
ONLINE-RECONFIGURABLE
NONE
PENDING OFFLINE
NONE
STORAGE INCREMENT SIZE IS 1M
************************************************************************************
Next Command (3/3): D OMVS
************************************************************************************
RC: 0
ISFMSG: COMMAND ISSUED
ISFMSG2.1 : ISF776I Processing started for action 1 of 1.
ISFMSG2.2 : ISF769I System command issued, command text: D OMVS.
ISFMSG2.3 : ISF766I Request completed, status: COMMAND ISSUED.
ZOS1 2016264 16:01:45.31 ISF031I CONSOLE CICS004 ACTIVATED
ZOS1 2016264 16:01:45.31 -D OMVS
ZOS1 2016264 16:01:45.33 BPXO042I 16.01.45 DISPLAY OMVS 036
OMVS 0010 ACTIVE OMVS=(01,FS)
command_list_test.txtに書かれたコマンド(上の例だと3つ)が続けてバババッと実行されます。
##SDSFコマンドをまとめて投入するシェル・スクリプト(確認付)
上の例だと、コマンドの結果によらず立て続けに全てのコマンドが実行されてしまいます。各コマンドの結果を確認して、その都度次のコマンドを実行するかどうかの確認を行うプロンプトを表示するバージョンも作ってみました。
exec_command_list_prompt.sh ソース
使い方は上と同様ですが、各コマンド実行前にプロンプトが出て処理が止まるので、コマンドを実行するかスキップするか終了するかを選択できます。
[CICS004@EPLEX1:/u/cics004/Shell] cat command_list_test.txt
D T
D M=STOR
D OMVS
[CICS004@EPLEX1:/u/cics004/Shell] ./exec_command_list_prompt.sh command_list_test.txt
0 : D T
1 : D M=STOR
2 : D OMVS
number of commands: 3
************************************************************************************
Next Command (1/3): D T
Execute this command: [enter] / Skip this command : s / Finish this script: f
************************************************************************************
Input>
--- Execute this command ---
RC: 0
ISFMSG: COMMAND ISSUED
ISFMSG2.1 : ISF776I Processing started for action 1 of 1.
ISFMSG2.2 : ISF769I System command issued, command text: D T.
ISFMSG2.3 : ISF766I Request completed, status: COMMAND ISSUED.
ZOS1 2016264 16:04:19.53 ISF031I CONSOLE CICS004 ACTIVATED
ZOS1 2016264 16:04:19.53 -D T
ZOS1 2016264 16:04:19.53 STC04838 IEE136I LOCAL: TIME=16.04.19 DATE=2016.264 UTC: TIME=07.04.19 DATE=2016.264
************************************************************************************
Next Command (2/3): D M=STOR
Execute this command: [enter] / Skip this command : s / Finish this script: f
************************************************************************************
Input>s
--- Skip this command ---
************************************************************************************
Next Command (3/3): D OMVS
Execute this command: [enter] / Skip this command : s / Finish this script: f
************************************************************************************
Input>
--- Execute this command ---
RC: 0
ISFMSG: COMMAND ISSUED
ISFMSG2.1 : ISF776I Processing started for action 1 of 1.
ISFMSG2.2 : ISF769I System command issued, command text: D OMVS.
ISFMSG2.3 : ISF766I Request completed, status: COMMAND ISSUED.
ZOS1 2016264 16:04:27.10 ISF031I CONSOLE CICS004 ACTIVATED
ZOS1 2016264 16:04:27.10 -D OMVS
ZOS1 2016264 16:04:27.11 BPXO042I 16.04.27 DISPLAY OMVS 045
OMVS 0010 ACTIVE OMVS=(01,FS)
#USS上でのJOBLOG関連操作
##USSからJOBLOGを参照する
USSからJOBLOGを参照するためのREXXです。
出来る事:
指定したJOBIDのJOBLOGを標準出力に表示します。
使い方:
$ joblog.rex <JOBID>
例:
$ joblog.rex JOB04854
LISTCATをするJCLのJOBLOG参照例
[CICS004@EPLEX1:/u/cics004/REXX] joblog.rex JOB04854
isfmsg2.1 is: ISF767I Request completed.
LISTC JOB04854 CICS004
1 J E S 2 J O B L O G -- S Y S T E M Z O S 1 -- N O D E E P L E X
0
16.16.29 JOB04854 ---- TUESDAY, 20 SEP 2016 ----
16.16.29 JOB04854 IRR010I USERID CICS004 IS ASSIGNED TO THIS JOB.
16.16.29 JOB04854 ICH70001I CICS004 LAST ACCESS AT 15:59:00 ON TUESDAY, SEPTEMBER 20, 2016
16.16.29 JOB04854 $HASP373 LISTC STARTED - INIT 1 - CLASS A - SYS ZOS1
16.16.29 JOB04854 IEF403I LISTC - STARTED - TIME=16.16.29
16.16.29 JOB04854 - -----TIMINGS (MINS.)------ -----PAGING COUNTS----
16.16.29 JOB04854 -STEPNAME PROCSTEP RC EXCP CONN TCB SRB CLOCK SERV WORKLOAD PAGE SWAP VIO SWAPS
16.16.29 JOB04854 -GO 00 78 15 .00 .00 .0 775 BATCHWL 0 0 0 0
16.16.29 JOB04854 IEF404I LISTC - ENDED - TIME=16.16.29
16.16.29 JOB04854 -LISTC ENDED. NAME- TOTAL TCB CPU TIME= .00 TOTAL ELAPSED TIME= .0 SUBSYS=JES2
16.16.29 JOB04854 $HASP395 LISTC ENDED
0------ JES2 JOB STATISTICS ------
- 20 SEP 2016 JOB EXECUTION DATE
- 8 CARDS READ
- 1,832 SYSOUT PRINT RECORDS
- 0 SYSOUT PUNCH RECORDS
- 68 SYSOUT SPOOL KBYTES
- 0.00 MINUTES EXECUTION TIME
1 //LISTC JOB MSGCLASS=X,CLASS=A,NOTIFY=&SYSUID JOB04854
//*----------------------------------------------------- 00013038
//* 00014038
IEFC653I SUBSTITUTION JCL - MSGCLASS=X,CLASS=A,NOTIFY=CICS004
2 //GO EXEC PGM=IDCAMS,REGION=0M 00018038
3 //SYSPRINT DD SYSOUT=* 00019038
4 //SYSIN DD * 00020038
ICH70001I CICS004 LAST ACCESS AT 15:59:00 ON TUESDAY, SEPTEMBER 20, 2016
IEF236I ALLOC. FOR LISTC GO
IEF237I JES2 ALLOCATED TO SYSPRINT
IEF237I JES2 ALLOCATED TO SYSIN
IEF142I LISTC GO - STEP WAS EXECUTED - COND CODE 0000
IEF285I CICS004.LISTC.JOB04854.D0000102.? SYSOUT
IEF285I CICS004.LISTC.JOB04854.D0000101.? SYSIN
IEF373I STEP/GO /START 2016264.1616
IEF032I STEP/GO /STOP 2016264.1616
CPU: 0 HR 00 MIN 00.01 SEC SRB: 0 HR 00 MIN 00.00 SEC
VIRT: 480K SYS: 260K EXT: 648K SYS: 11520K
ATB- REAL: 8K SLOTS: 0K
VIRT- ALLOC: 1M SHRD: 0M
IEF375I JOB/LISTC /START 2016264.1616
IEF033I JOB/LISTC /STOP 2016264.1616
CPU: 0 HR 00 MIN 00.01 SEC SRB: 0 HR 00 MIN 00.00 SEC
1IDCAMS SYSTEM SERVICES TIME: 16:16:29 09/20/16 PAGE 1
0
LISTC USERCATALOG ALL 00021038
1IDCAMS SYSTEM SERVICES TIME: 16:16:29 09/20/16 PAGE 2
- LISTING FROM CATALOG -- CATALOG.Z21.MASTER
0USERCATALOG --- CATALOG.DB2018
HISTORY
RELEASE----------------2
VOLUMES
VOLSER------------DB2P08 DEVTYPE------X'3010200F' VOLFLAG------------PRIME
ASSOCIATIONS
ALIAS----KAWAGUTI
0USERCATALOG --- CATALOG.IMSTOOLS
HISTORY
RELEASE----------------2
VOLUMES
VOLSER------------DB2P15 DEVTYPE------X'3010200F' VOLFLAG------------PRIME
ASSOCIATIONS
ALIAS----EKY310
ALIAS----FPBS12
ALIAS----IMSPI21
ALIAS----HDCG11
ALIAS----HPCA11
ALIAS----HPCA110C
ALIAS----HWS120
ALIAS----QCF12
ALIAS----HWS210
ALIAS----IMSPA32
ALIAS----IMSPA31
ALIAS----HPCA12
ALIAS----IMSPM11
ALIAS----DRCF21
ALIAS----IICF82B
ALIAS----HPCASPLC
ALIAS----HPCASPLF
ALIAS----IMSPA33
ALIAS----HWSX11
ALIAS----IMSPI12
ALIAS----HWS22
ALIAS----HPFP21
ALIAS----HPIC32
ALIAS----HPLO21
ALIAS----IBPA11
ALIAS----QCF21
ALIAS----DENC11
ALIAS----HPIC41
ALIAS----HPPC21
ALIAS----HPFP22
(以下略)
##JOBLOGのうち特定のDD部分を参照する
JOBLOGのうち特定のDD部分を参照するためのREXXです。
出来る事:
指定したJOBID、DD名に該当するJOBLOGを標準出力に表示します。
使い方:
$ joblog_dd.rex <JOBID> <DD名>
例:
$ joblog_dd.rex JOB04854
先のJOBLOGのうちJESMSGLG部分を参照する例
[CICS004@EPLEX1:/u/cics004/REXX] joblog_dd.rex JOB04854 JESMSGLG
1 J E S 2 J O B L O G -- S Y S T E M Z O S 1 -- N O D E E P L E X
0
16.16.29 JOB04854 ---- TUESDAY, 20 SEP 2016 ----
16.16.29 JOB04854 IRR010I USERID CICS004 IS ASSIGNED TO THIS JOB.
16.16.29 JOB04854 ICH70001I CICS004 LAST ACCESS AT 15:59:00 ON TUESDAY, SEPTEMBER 20, 2016
16.16.29 JOB04854 $HASP373 LISTC STARTED - INIT 1 - CLASS A - SYS ZOS1
16.16.29 JOB04854 IEF403I LISTC - STARTED - TIME=16.16.29
16.16.29 JOB04854 - -----TIMINGS (MINS.)------ -----PAGING COUNTS----
16.16.29 JOB04854 -STEPNAME PROCSTEP RC EXCP CONN TCB SRB CLOCK SERV WORKLOAD PAGE SWAP VIO SWAPS
16.16.29 JOB04854 -GO 00 78 15 .00 .00 .0 775 BATCHWL 0 0 0 0
16.16.29 JOB04854 IEF404I LISTC - ENDED - TIME=16.16.29
16.16.29 JOB04854 -LISTC ENDED. NAME- TOTAL TCB CPU TIME= .00 TOTAL ELAPSED TIME= .0 SUBSYS=JES2
16.16.29 JOB04854 $HASP395 LISTC ENDED
0------ JES2 JOB STATISTICS ------
- 20 SEP 2016 JOB EXECUTION DATE
- 8 CARDS READ
- 1,832 SYSOUT PRINT RECORDS
- 0 SYSOUT PUNCH RECORDS
- 68 SYSOUT SPOOL KBYTES
- 0.00 MINUTES EXECUTION TIME
##JOB名からJOBIDのリストを取得 (JOBIDリストのみ)
指定したJOB名に合致するJOBのJOBIDのリストを表示するREXXです。
SDSF - ST の画面でPRE xxx* で表示されるJOBからJOBIDを抜き出すイメージです。
jobidlist.rexソース
※シェル・スクリプトから再利用しやすいように敢えてJOBIDのみをリストするようにしています。
出来る事:
指定したJOB名に該当するJOBIDを標準出力に表示します。
使い方:
$ jobidlist.rex <JOB名のプレフィックス>
例:
$ jobidlist.rex LIS
LISで始まるJOB名のJOBIDをリストする例
(ST画面でPRE LIS*を実行した時に得られるJOB)
[CICS004@EPLEX1:/u/cics004/REXX] ./jobidlist.rex LIS
JOB04854
JOB04861
##JOB名からJOBIDのリストを取得 (詳細情報付き)
先の例と同様、指定したJOB名に合致するJOBのJOBIDのリストを表示するREXXです。
SDSF - ST の画面でPRE xxx* で表示されるJOBからJOBIDを抜き出すイメージです。
jobidlist_detail.rexソース
※見た目に分かりやすいよう、JOBIDだけでなく他の情報も付随して表示させています(ST画面に近い形で出力)
出来る事:
指定したJOB名に該当するJOBIDを標準出力に表示します。
使い方:
$ jobidlist_detail.rex <JOB名のプレフィックス>
例:
$ jobidlist_detail.rex LIS
LISで始まるJOB名のJOBIDをリストする例
(ST画面でPRE LIS*を実行した時に得られるJOB)
[CICS004@EPLEX1:/u/cics004/REXX] ./jobidlist_detail.rex LIS
LISTC JOB04854 CICS004 1 PRINT CC 0000
LISTC JOB04861 CICS004 1 PRINT CC 0000
##JOBLOGをDD単位でファイルに落とす(1)
指定したJOBIDに該当するJOBのJOBLOGを、DD別にファイルに出力するREXXです。
出来る事:
指定したJOBIDに該当するJOBLOGをDD単位でカレント・ディレクトリに出力します。ファイル名は<JOBID>_<DD名>.txtです。
使い方:
$ jobdd.rex <JOBID>
例:
$ jobdd.rex JOB04854
JOBID: JOB04854 のJOBLOGをDD単位でファイルに出力する例
[CICS004@EPLEX1:/u/cics004/REXX] jobdd.rex JOB04854
Create file: JOB04854_JESMSGLG.txt
Create file: JOB04854_JESJCL.txt
Create file: JOB04854_JESYSMSG.txt
Create file: JOB04854_SYSPRINT.txt
[CICS004@EPLEX1:/u/cics004/REXX] ls -la | grep JOB04854
-rw-rw-rw- 1 AZUMA STC 625 Sep 20 09:25 JOB04854_JESJCL.txt
-rw-rw-rw- 1 AZUMA STC 1346 Sep 20 09:25 JOB04854_JESMSGLG.txt
-rw-rw-rw- 1 AZUMA STC 896 Sep 20 09:25 JOB04854_JESYSMSG.txt
-rw-rw-rw- 1 AZUMA STC 61323 Sep 20 09:25 JOB04854_SYSPRINT.txt
##JOBLOGをDD単位でファイルに落とす(2)
上の例ではJOBIDを指定する必要があるので、JOBIDを調べる必要があるので状況によっては少し面倒です。
JOB名を指定して、そのJOB名に該当するJOBIDのうち一番数字が大きいもの(≒最新のもの)を判断してJOBLOGをDD単位で取得するシェル・スクリプトを作ってみました。
内部的には先に紹介したjobidlist.rex, jobdd.rexを使用しています。
出来る事:
指定したJOB名に該当するJOBLOGのうち、JOBIDが一番大きいものをDD単位でカレント・ディレクトリに出力します。ファイル名は<JOBID>_<DD名>.txtです。
(STの画面でPRE xxx*でリストされるJOBLOGから選択されるイメージです)
使い方:
$ getJobDDs.sh <JOB名>
例:
$ getJobDDs.sh LIST
JOB名: LIST* のJOBLOGのうち一番JOBIDが大きいものをDD単位でファイルに出力する例
[CICS004@EPLEX1:/u/cics004/Shell] getJobDDs.sh LIST
Create file: JOB04861_JESMSGLG.txt
Create file: JOB04861_JESJCL.txt
Create file: JOB04861_JESYSMSG.txt
Create file: JOB04861_SYSPRINT.txt
#USSからJCLをサブミットする
USSからJCLをサブミットし、JOBLOGを標準出力に返すシェル・スクリプトです。
内部的には先に紹介したjoblog.rexを使用しています。
JCLの完了を拾うスマートな方法が分からなかったので、短絡的にSleep入れてJOBLOG取得をするようにしています。
出来る事:
指定したJCLをサブミットします。合わせてSleepTimeを指定できるので、その時間待ってJOBLOGを標準出力に出力します。待ち時間は省略可(デフォルト5秒)。
使い方:
$ jcl_sub.sh <JCL名> [<Sleep Time>]
例:
$ jcl_sub.sh 'CICSSHR.CICS004.JCLLIB(LISTC)' 10
LISTCATを行うJCL(CICSSHR.CICS004.JCLLIB(LISTC)というPDSメンバー)をサブミットする例
[CICS004@EPLEX1:/u/cics004/Shell] ./jcl_sub.sh 'CICSSHR.CICS004.JCLLIB(LISTC)' 10
JobID: JOB04888
sleep 10
isfmsg2.1 is: ISF767I Request completed.
LISTC JOB04888 CICS004
1 J E S 2 J O B L O G -- S Y S T E M Z O S 1 -- N O D E E P L E X
0
18.49.56 JOB04888 ---- TUESDAY, 20 SEP 2016 ----
18.49.56 JOB04888 IRR010I USERID CICS004 IS ASSIGNED TO THIS JOB.
18.49.56 JOB04888 ICH70001I CICS004 LAST ACCESS AT 18:46:36 ON TUESDAY, SEPTEMBER 20, 2016
18.49.56 JOB04888 $HASP373 LISTC STARTED - INIT 1 - CLASS A - SYS ZOS1
18.49.56 JOB04888 IEF403I LISTC - STARTED - TIME=18.49.56
18.49.56 JOB04888 - -----TIMINGS (MINS.)------ -----PAGING COUNTS----
18.49.56 JOB04888 -STEPNAME PROCSTEP RC EXCP CONN TCB SRB CLOCK SERV WORKLOAD PAGE SWAP VIO SWAPS
18.49.56 JOB04888 -GO 00 77 15 .00 .00 .0 777 BATCHWL 0 0 0 0
18.49.56 JOB04888 IEF404I LISTC - ENDED - TIME=18.49.56
18.49.56 JOB04888 -LISTC ENDED. NAME- TOTAL TCB CPU TIME= .00 TOTAL ELAPSED TIME= .0 SUBSYS=JES2
18.49.56 JOB04888 $HASP395 LISTC ENDED
0------ JES2 JOB STATISTICS ------
- 20 SEP 2016 JOB EXECUTION DATE
- 8 CARDS READ
- 1,832 SYSOUT PRINT RECORDS
- 0 SYSOUT PUNCH RECORDS
- 68 SYSOUT SPOOL KBYTES
- 0.00 MINUTES EXECUTION TIME
1 //LISTC JOB MSGCLASS=X,CLASS=A,NOTIFY=&SYSUID JOB04888
//*----------------------------------------------------- 00013038
//* 00014038
IEFC653I SUBSTITUTION JCL - MSGCLASS=X,CLASS=A,NOTIFY=CICS004
2 //GO EXEC PGM=IDCAMS,REGION=0M 00018038
3 //SYSPRINT DD SYSOUT=* 00019038
4 //SYSIN DD * 00020038
ICH70001I CICS004 LAST ACCESS AT 18:46:36 ON TUESDAY, SEPTEMBER 20, 2016
IEF236I ALLOC. FOR LISTC GO
IEF237I JES2 ALLOCATED TO SYSPRINT
IEF237I JES2 ALLOCATED TO SYSIN
IEF142I LISTC GO - STEP WAS EXECUTED - COND CODE 0000
IEF285I CICS004.LISTC.JOB04888.D0000102.? SYSOUT
IEF285I CICS004.LISTC.JOB04888.D0000101.? SYSIN
IEF373I STEP/GO /START 2016264.1849
IEF032I STEP/GO /STOP 2016264.1849
CPU: 0 HR 00 MIN 00.01 SEC SRB: 0 HR 00 MIN 00.00 SEC
VIRT: 480K SYS: 260K EXT: 648K SYS: 11520K
ATB- REAL: 8K SLOTS: 0K
VIRT- ALLOC: 1M SHRD: 0M
IEF375I JOB/LISTC /START 2016264.1849
IEF033I JOB/LISTC /STOP 2016264.1849
CPU: 0 HR 00 MIN 00.01 SEC SRB: 0 HR 00 MIN 00.00 SEC
1IDCAMS SYSTEM SERVICES TIME: 18:49:56 09/20/16 PAGE 1
0
LISTC USERCATALOG ALL 00021038
1IDCAMS SYSTEM SERVICES TIME: 18:49:56 09/20/16 PAGE 2
- LISTING FROM CATALOG -- CATALOG.Z21.MASTER
0USERCATALOG --- CATALOG.DB2018
HISTORY
RELEASE----------------2
VOLUMES
VOLSER------------DB2P08 DEVTYPE------X'3010200F' VOLFLAG------------PRIME
ASSOCIATIONS
ALIAS----KAWAGUTI
0USERCATALOG --- CATALOG.IMSTOOLS
HISTORY
RELEASE----------------2
VOLUMES
VOLSER------------DB2P15 DEVTYPE------X'3010200F' VOLFLAG------------PRIME
ASSOCIATIONS
ALIAS----EKY310
ALIAS----FPBS12
ALIAS----IMSPI21
ALIAS----HDCG11
ALIAS----HPCA11
ALIAS----HPCA110C
(以下略)
#おわりに
PCOMよりteratermの方が断然操作性がよいので、この辺の仕組みを充実させるとかなり使い勝手がよくなると思います。特にJOBLOGの取得なんて結構便利じゃないでしょうか? PCOMだと一つ一つXDCの画面からデータセットに移して...みたいなことをすると思うんですけど。
(そのうちWindowsにダイレクトにJOBLOG落とす方法についても書く予定。)
問題はお客様環境だと権限の問題なんかがあったりしてなかなかここまで自由にできないんですよね...。
こういうインターフェースが主流になる日は来るのだろうか???
ここで紹介した内容の応用編です。
Windows/Linux/UnixからSSH経由でz/OSを操作する
#参考
z/OS 2.2.0 - SDSF - z/OS SDSF Operation and Customization - Using SDSF with the REXX programming language
z/OS 2.2.0 - SDSF - z/OS SDSF Operation and Customization - Columns on the SDSF panels - Status panel (ST)
z/OS UNIX tools