나는 웹사이트에 ping을 보내서 내가 주중에 몇 시간 일했는지 알려주는 스크립트를 가지고 있습니다. 내 상태 표시줄에 표시하고 싶지만 tmux.conf
1초에 한 번씩 실행되는 스크립트에 문제가 있어 네트워크가 넘쳐나는 것 같습니다. <"cmd" not ready>
tmux 텍스트를 표시하지 않고 이런 일이 발생하지 않도록 제한하는 방법이 있습니까 ?
현재 내 안에는 tmux.conf
이 명령이 있습니다.
set -g status-right '#[fg=colour6,bold]#(watch -n 60 zsh ~/directory/src/directory/scripts/time.zsh)'
하지만 실행되면
<'watch -n 60 zsh ~/directory/src/directory/scripts/time.zsh' not ready>
마지막으로 실행된 시간을 유지하고 이 메시지를 표시하지 않는 방법이 있습니까? 감사해요.
답변1
스크립트 time.zsh를 수정하여 결과를 파일에 캐시하고 스크립트가 호출될 때마다 파일의 수명을 테스트할 수 있습니다.
CACHE_OUTPUT=/tmp/resul-cache.txt
AGE_TO_CACHE=10
if [ $(( $( stat --format=%Y $CACHE_OUTPUT ) + $AGE_TO_CACHE )) -gt $( date +%s ) && echo too old ) ] ;
then
cat $CACHE_OUTPUT
exit 0
fi
(
# where you fetch
# ...
#
) > $CACHE_OUTPUT