bash – 计算从一个进程传递到另一个进程的字节数

我正在运行一个 shell脚本,将数据从一个进程传递到另一个进程
process_a | process_b

有谁知道找出两个程序之间传递了多少字节的方法?我现在能想到的唯一解决方案是编写一个从stdin读取的小型c程序,写入stdout并计算所有传输的数据,将计数存储在环境变量中,如:

process_a | count_bytes | process_b

有没有人有一个更整洁的解决方案?

通过dd管道. dd的认输入是stdin,输出是stdout;当它完成stdin / stdout I / O时,它会向stderr报告它传输了多少数据.

如果要捕获dd的输出并且其他程序已经与stderr对话,则使用另一个文件描述符.例如,

$exec 4>~/fred
$input-command | dd 2>&4 | output-command
$exec 4>&-

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...