首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >制造:启动进程,如果被杀死,不杀死制造。

制造:启动进程,如果被杀死,不杀死制造。
EN

Unix & Linux用户
提问于 2020-03-02 14:56:10
回答 1查看 292关注 0票数 1

我使用GNU make在R中启动不同的写/读调用的基准测试,在某些情况下,这将导致我的RAM被充分使用,进程被终止(这很好,因为我希望看到限制)。

然而,问题是,整个make过程被终止,而不仅仅是特定的脚本调用。

例如,假设我有下面的Makefile,目标small.csv工作正常,large.csv崩溃(有点预料),但是现在其他的...目标没有构建。

问题是,如何以某种方式启动进程(Rscript tester --size large),在一个进程被杀死后,make可以继续另一个(...)基准测试?

代码语言:javascript
复制
# Makefile

.PHONY: all

all: small.csv large.csv ...

small.csv: tester.R
    Rscript tester.R --size small

large.csv: tester.R
    Rscript tester.R --size large

...

请注意,脚本在第一行中触及目标,因此目标总是被创建,不管运行是否被终止。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-03-02 15:05:07

发生这种情况的原因是,如果任何命令指示其失败,Make默认会停止执行。

您可以通过前缀命令-禁用此功能:

代码语言:javascript
复制
small.csv: tester.R
        -Rscript tester.R --size small

large.csv: tester.R
        -Rscript tester.R --size large

或者,您可以使用make选项运行-k,让它在错误发生后尽可能地继续运行。

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

https://unix.stackexchange.com/questions/570722

复制
相关文章

相似问题

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