cobol程序里调用shell
时间: 2023-08-24 17:05:15 浏览: 47
在 COBOL 程序中调用 Shell,可以使用 `CALL` 命令和 Shell 命令来实现。以下是一个简单的示例程序:
```
IDENTIFICATION DIVISION.
PROGRAM-ID. CALL-SHELL.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 CMD-ARG.
05 ARG-LENGTH PIC S9(4) COMP.
05 ARG-STRING PIC X(100).
PROCEDURE DIVISION.
MAIN-LOGIC SECTION.
MOVE LENGTH OF 'ls -l' TO ARG-LENGTH
MOVE 'ls -l' TO ARG-STRING
CALL 'SYSTEM' USING CMD-ARG
STOP RUN.
```
在这个示例中,我们首先定义了一个 `CMD-ARG` 变量,用于存储 Shell 命令和参数。然后,我们将 `ls -l` 命令和参数存储在 `CMD-ARG` 变量中,并使用 `CALL 'SYSTEM' USING CMD-ARG` 命令来调用 Shell。
请注意,这个示例程序可能需要根据你的特定的操作系统和 Shell 命令做出一些调整。
相关问题
shell如何调用cobol
在shell中调用cobol程序,可以使用cobrun命令。cobrun命令可以接受多个参数,其中第一个参数是要执行的cobol程序的名称,后面的参数可以是该程序所需的输入参数。例如,要在shell中执行名为myprogram的cobol程序,可以使用以下命令:
cobrun myprogram arg1 arg2
其中arg1和arg2是myprogram所需的输入参数。
COBOL调用子程序实现代码案例
下面是一个简单的COBOL程序示例,演示如何调用一个子程序来执行特定的任务:
IDENTIFICATION DIVISION.
PROGRAM-ID. MAIN_PROGRAM.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM1 PIC 9(3) VALUE 100.
01 NUM2 PIC 9(3) VALUE 200.
01 SUM PIC 9(4).
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY "Calling the Subprogram to perform addition...".
PERFORM ADDITION-SUBPROGRAM.
DISPLAY "Returned from the Subprogram.".
DISPLAY "The sum is: " SUM.
STOP RUN.
ADDITION-SUBPROGRAM.
COMPUTE SUM = NUM1 + NUM2.
在这个示例中,我们定义了一个主程序(MAIN_PROGRAM),并在其中调用一个名为ADDITION-SUBPROGRAM的子程序。
主程序的PROCEDURE DIVISION部分包含了一系列指令。首先,使用DISPLAY语句显示一条消息,表示正在调用子程序执行加法操作。然后,使用PERFORM语句调用ADDITION-SUBPROGRAM子程序。
ADDITION-SUBPROGRAM子程序计算NUM1和NUM2的和,并将结果存储在SUM变量中。
当子程序执行完成后,控制权返回到主程序。主程序继续执行,使用DISPLAY语句显示一条消息表示已经从子程序返回,并显示计算得到的和。
最后,使用STOP RUN语句停止程序的执行。
当你运行这个COBOL程序时,它会输出以下内容:
```
Calling the Subprogram to perform addition...
Returned from the Subprogram.
The sum is: 300
```
这表明主程序成功调用了子程序来执行加法操作,并正确获得了结果。