首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在COBOL中启动子进程

在COBOL中启动子进程
EN

Stack Overflow用户
提问于 2016-05-05 17:22:21
回答 1查看 276关注 0票数 3

如何在GnuCOBOL中启动子进程?

在Node.js中,我们可以使用spawnexec启动子进程:

代码语言:javascript
复制
var proc = require("child_process").spawn("ls", ["-l"]);
proc.stdout.on("data", function (chunk) {
  console.log(chunk);
});

// or

var proc = require("child_process").exec("ls -l"], function (err, stdout, stderr) {
   ...
});

以上两个示例都运行ls -l (列出文件和目录)。如何在COBOL中实现同样的目标?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-06 05:45:59

使用一个公共的COBOL扩展,这个扩展在GnuCOBOL (以前的OpenCOBOL)中支持多年了:

代码语言:javascript
复制
CALL 'SYSTEM' USING whatever END-CALL

这也适用于“cobcrun”,如果您需要一个具有单独环境(EXTERNAL items,ACCEPT x FROM y / SET ENVIRONMENT y TO x)或运行时配置(例如通过cobcrun -c different.cfg OTHERMAIN)的COBOL进程,则可以使用。

您的原始示例可能看起来(没有使用管道的选项,这将是一个不同的问题):

代码语言:javascript
复制
CALL 'SYSTEM' USING 'ls -l >dirlist'
  ON EXCEPTION
    CALL 'SYSTEM' USING 'dir >dirlist'
    END-CALL
END-CALL

之后,您可以将目录读入为普通行顺序文件。

西蒙

顺便说一句:给出你的样本,你可以去找CALL 'C$LISTDIR'

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37056582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档