[ 自宅でCOBOL_目次 ]

コマンドラインでの入出力ファイル指定について



コーディングする

プログラム内では入出力ファイルをコマンドラインからACCEPTするようにコーディングする。太字の部分に注意。
       IDENTIFICATION DIVISION.
       PROGRAM-ID. LIST0003.
       AUTHOR.     JIRO SUZUKI.
       ENVIRONMENT DIVISION.  
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
         SELECT  IN01  ASSIGN  TO  IN01NAME
                 ACCESS  MODE  IS  SEQUENTIAL.  
         SELECT  OUT1  ASSIGN  TO  OUT1NAME
                 ACCESS  MODE  IS  SEQUENTIAL.  
       DATA DIVISION.
       FILE SECTION.
       FD  IN01.
       COPY I-PRDCTDTL.
       FD  OUT1.
       01 O-REC          PIC X(132).
       WORKING-STORAGE SECTION.
       01 IN01NAME       PIC X(80).  *>インプットファイル名取得用項目
       01 OUT1NAME       PIC X(80).  *>アウトプットファイル名取得用項目
      *
                  (中略)
      *--------------------------------------------------------
       PROCEDURE DIVISION.
       MAIN SECTION.            *>全体処理
         PERFORM INIT-PROC THRU INIT-EXIT.
         PERFORM MAIN-PROC THRU MAIN-EXIT.
         PERFORM TERM-PROC THRU TERM-EXIT.
         STOP RUN.
      *--------------------------------------------------------
       INIT-PROC.               *>初期処理
         DISPLAY CNS-INIT-MSG.
      *
         ACCEPT IN01NAME FROM ARGUMENT-VALUE.
         ACCEPT OUT1NAME FROM ARGUMENT-VALUE.
      *
         OPEN INPUT  IN01
              OUTPUT OUT1.
      *
                  (以下略)




実行コマンドに入出力ファイル名を指定して実行する

./LIST0003  /HOME/各ユーザID/DAT/LIST0003IN01.DAT  /HOME/各ユーザID/DAT/LIST0003OUT1.DAT
[ PGM-ID ]  [     InputFilePath      ]  [      OutputFilePath     ]