我有一个脚本,该脚本遍历数百行,并为每行执行一个Java命令。要并行运行它,我正在使用xargs。我能够并行执行。但是,我的数据格式有些影响。
cat test.txt | xargs --max-procs=10 --max-args=6 -I '{}' kafka-run-class '{}' | column -t | tr -s ' ' , | sed -e "s/^/$(date '+%F %T'),Test,**'{}'**,/g"
我希望在sed中使用xargs的参数!那可能吗?
kafka-run-class的输出如下。
TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
Test1 0 15336084 15336084 0 consumer-1-e9ff70f4-01e4-4c69-9c92-c568319c0e95 /192.1.127.32 consumer-1
我期望的最终输出如下。
2019-02-14 17:18:13,Test,**'{}'**,Test1,0,15336084,15336084,0,consumer-1-e9ff70f4-01e4-4c69-9c92-c568319c0e95,/192.1.127.32,consumer-1
我能够使用for循环而不是xargs来实现这一点,但这将意味着脚本运行缓慢。