削除時のテキスト/画面のちらつきを防ぐ

削除時のテキスト/画面のちらつきを防ぐ

私のスクリプトは同様のことをします。

while :;
   clear

   do_a_lot_of_output_here

   sleep 1
done

クリアや出力時に画面がちらつく現象を防止するオプションはありますか?私はwatch命令のようにこれをしたいと思います(しかしそれはに書かれていますC)。どんな提案がありますか?

clear | hexdump -C

00000000  1b 5b 48 1b 5b 32 4a                              |.[H.[2J|
00000007

PS。私はbash

ベストアンサー1

ちらつきを防ぐ1つの方法は、画面を消去して再描画するまでの時間を最小限に抑えるために、画面を消去する前にすべての出力を取得することです。これは二重バッファリングの概念に似ています。

while :; do
   output=$(do_a_lot_of_output_here)
   clear
   echo "$output"
   sleep 1
done

これにより、ちらつきは完全に削除されませんが、私の経験では、ちらつきの発生頻度は大幅に減少します。

おすすめ記事