画面(または各ウィンドウの内容)が最後に変更されてから経過した時間を表示できるtmuxプラグイン/スニペットはありますか?
これは、ログストリーム(例えばtailfを介して)を監視するのに特に便利です。
ありがとうございます。
答え1
制御モード(tmux -C
)を使用して出力を解析します。
迅速で汚れたスクリプト、概念証明:
#!/bin/bash
pane="$1"
trap 'SECONDS=0; dte="$(date)"' USR1
unset TMUX
kill -s USR1 "$$"
tmux -C attach | while read -r a p z; do
[ "$p" = "$pane" ] && kill -s USR1 "$$"
done &
while sleep 1; do printf '\r%-12d %s ' "$SECONDS" "$dte"; done
使用法:監視したいウィンドウのIDは./scriptname %N
どこにあります(たとえば、通常を使用して取得できます)。スクリプトが実行されているウィンドウを監視することは可能ですが、それほど意味がありません。%N
%0
echo "$TMUX_PANE"
tail -f /var/log/syslog
監視対象のポッドや他の場所でテストされましたlogger
。