Debian Extension ユーザーはここにあります。画面が10分ごとに点滅するようにしたいと思います。いくつかの選択肢をxrefresh
含めると、シェルsct
で動作しますがcron
。
これは働きます:
sct 2000
スクリプト:(名前colrefr
)
#!/bin/bash
PATH=/usr/bin
sct 2000; sleep 3; sct
クローナ:(実行中のpgrep cron
姿cron
)
* * * * * /home/user/folder/colrefr
(デバッグが成功するまで1分に1回)
PATH
最後のコマンドの後の改行、スクリプト設定、ファイル名にドットなしなどの一般的な問題を軽減しました。
$ which sct
/usr/bin/sct
$ which sleep
/bin/sleep/
-
$ sudo tail -f /var/log/syslog
Oct 16 16:00:01 user CRON[29060]: (user) CMD (/home/user/folder/colrefr )
Oct 16 16:00:01 user kernel: [229206.201351] sct[29062]: segfault at e0 ip 000055dca79aa8cd sp 00007ffd9dfc6220 error 4 in sct[55dca79aa000+2000]
Oct 16 16:00:01 user kernel: [229206.201366] Code: 17 20 00 66 90 ff 25 4a 17 20 00 66 90 41 57 41 56 41 55 41 54 55 53 89 fb 31 ff 48 89 f5 48 83 ec 38 e8 ae ff ff ff 49 89 c4 <48> 63 80 e0 00 00 00 4c 89 e7 48 c1 e0 07 49 03 84 24 e8 00 00 00
Oct 16 16:00:01 user kernel: [229206.209280] sct[29064]: segfault at e0 ip 000055dcdd3268cd sp 00007ffdf60c9e40 error 4 in sct[55dcdd326000+2000]
Oct 16 16:00:01 user kernel: [229206.209295] Code: 17 20 00 66 90 ff 25 4a 17 20 00 66 90 41 57 41 56 41 55 41 54 55 53 89 fb 31 ff 48 89 f5 48 83 ec 38 e8 ae ff ff ff 49 89 c4 <48> 63 80 e0 00 00 00 4c 89 e7 48 c1 e0 07 49 03 84 24 e8 00 00 00
他の3人がいますが、cronjobs
すべて動作します。
シェルでスムーズに実行されます。
ベストアンサー1
これは2つの組み合わせです。
- Xサーバーがどこにあるかプログラムに教えてくれませんでした。
- M. Unangstのプログラムはエラーチェックと処理を全く行いません。
プログラムは、DISPLAY
調整したいXサーバーが表示される場所を知らせるために、crontabまたはラッパースクリプトで指定された環境変数を継承する必要があります。特に言及しない場合、表示される分割エラーは失敗モードです。
これをバグとして報告することもできます。
DISPLAY
GUI端末エミュレータを使用しているため、シェル環境に変数がある場合があります。カーネル/ユーザー仮想端末、物理端末、X11 転送なしの SSH セッションなど、GUI 以外の環境にログインしている場合は、対話式にプログラムを呼び出すときにも同じ動作を確認できます。
%ディスプレイ= sct zsh: 分割エラー DISPLAY= sct %
追加読書
- https://sources.debian.org/src/setcolorTemperature/1.3-1/sct.c/#L50
- https://unix.stackexchange.com/a/355177/5132
- https://unix.stackexchange.com/a/19238/5132
- https://unix.stackexchange.com/a/154453/5132
- https://unix.stackexchange.com/a/215151/5132
- https://bugs.debian.org/cgi-bin/pkgreport.cgi?archive=both;src=setcolorTemperature