使用GNU Parallel和Stata显示实时进度

时间:2018-12-06 21:58:16

标签: bash stata gnu-parallel

我正在使用GNU parallel为许多不同的数据集运行Stata do文件。

我有一个包含以下内容的Bash脚本:

parallel -a arguments.txt -j 3 stata -b do $dofileloc {}

由于do文件的每个数据集都有几个不同的部分,因此我希望进度显示为“实时”(例如,在部分内容之后显示“为XYZ加载的数据”)数据集的Stata do文件完成等)。

所以我想将消息从Stata重定向到命令行,但是这样做很麻烦。

如果我不以批处理模式运行Stata,则可以看到所有内容,这有点混乱。我曾尝试在Stata中使用shell命令,但似乎找不到正确的组合。

任何提示,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

这是您想要的吗?

parallel --tag --linebuffer -a arguments.txt -j 3 stata -b do $dofileloc {}