配管時に端末に印刷

配管時に端末に印刷
% ping -c 3 stackexchange.com | rev >/tmp/rping

ping結果を保存して元に戻します。この操作中に反転されていない出力を端末に印刷したいと思います ping。私はこの作業をping完了した直後ではなくリアルタイムで実行したいと思います。それは可能ですか?

答え1

使用ティー:

ping -c 3 stackexchange.com | tee /dev/tty | rev >/tmp/rping

答え2

プロセス置換を使用して(これをサポートするシェルを使用していると仮定して)、tee出力を端末にコピーします。pingrev

$ ping -c 3 stackexchange.com | tee >(rev >/tmp/rping)
ping: Warning: stackexchange.com has multiple addresses; using 151.101.65.69
PING stackexchange.com (151.101.65.69): 56 data bytes
64 bytes from 151.101.65.69: icmp_seq=0 ttl=52 time=18.887 ms
64 bytes from 151.101.65.69: icmp_seq=1 ttl=52 time=18.514 ms
64 bytes from 151.101.65.69: icmp_seq=2 ttl=52 time=18.508 ms

--- stackexchange.com ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/std-dev = 18.508/18.636/18.887/0.177 ms

上記のテキストは遅延なく出力されますping

$ cat /tmp/rping
setyb atad 65 :)96.56.101.151( moc.egnahcxekcats GNIP
sm 788.81=emit 25=ltt 0=qes_pmci :96.56.101.151 morf setyb 46
sm 415.81=emit 25=ltt 1=qes_pmci :96.56.101.151 morf setyb 46
sm 805.81=emit 25=ltt 2=qes_pmci :96.56.101.151 morf setyb 46

--- scitsitats gnip moc.egnahcxekcats ---
ssol tekcap %0.0 ,deviecer stekcap 3 ,dettimsnart stekcap 3
sm 771.0/788.81/636.81/805.81 = ved-dts/xam/gva/nim pirt-dnuor

関連情報