我想使用GNU并行来帮助我处理一些远程文件,我不想在本地保存。GNU并行输出到标准输出使用 - round-robin
我的命令看起来有点像:
python list_files.py | \
parallel -j5 'aws s3 cp s3://s3-bucket/{} -' | \
parallel -j5 --round --pipe -l 5000 "python process_and_print.py"
process_and_print.py
打印输出一些输入线,但输出没有得到立即stdout的像我预期的,相反我只看到后输出过程完了。如果我删除了--round
参数,所有参数都按预期工作。
所有数据都保存在哪里?我有办法将它打印到stdout,一行一行,没有缓冲?