Conkyに別のプロセスから更新するように指示する

Conkyに別のプロセスから更新するように指示する

Conky で現在の音量を表示しています${exec bash /path/to/script/getvolume.sh}。しかし、音量を変更した後、Conky が更新されるまでしばらく待たなければならないことに気付きました。別のスクリプトを書いてchangevolume.sh./changevolume.sh 12音量を変更するだけでなく、通常の更新間隔期間を待たずに、その後すぐに Conky が自動的に更新されるようにすることは可能でしょうか?

答え1

私の知る限り、強制終了して再起動する以外に、外部から強制的に更新する方法はありません。幸いなことに、その必要はありません。設定を使用して、より頻繁に更新するようにconky設定できます。conkyupdate_interval

update_interval 1

.conkyrcこれは設定オプションなので、ブロックの前の のヘッダーに配置する必要がありますTEXT

間隔が短いほど、conkyより頻繁に実行されるため、CPU 使用率が高くなることに注意してください。それが価値があるかどうかは、あなた次第です。

getvolume.sh唯一の他のオプションは、スクリプトを強制終了して再起動することですconky。スクリプトの最後に次の行を追加します。

killall conky; conky &

@Joseph R はconkyのマニュアルページでこれを見つけました:

   An easy way to force Conky to reload your ~/.conkyrc: "killall -SIGUSR1
   conky". Saves you the trouble of having to kill and then  restart.  You
   can now also do the same with SIGHUP.

したがって、conky次のコマンドを の末尾に追加することで、init ファイルを強制的に再読み込みすることができますgetvolume.sh

killall -SIGUSR1 conky

関連情報