Xコマンドは私のタスクからは開始されません。

Xコマンドは私のタスクからは開始されません。

atなどを含むLinuxスケジューリングコマンドを学んでいます。このコマンドは、x分後に起動しようとします。これが私が持っているものです:cronsleepgeditat

kedar@i5 ~ $ at now + 1 minute
at now + 1 minute
warning: commands will be executed using /bin/sh
at> ./s.sh
at> <EOT>
job 18 at Fri Aug 15 13:21:00 2014

コンテンツs.sh(-rwxr--r--):

#!/bin/sh
#set $DISPLAY=:0
echo "Created on" `date` >t.txt
gedit #(also tried /usr/bin/gedit and `gedit` and systen(/usr/bin/gedit))

1分後、予想されるコンテンツを含むt.txtが生成されます。しかし、geditまだリリースされていません。したがって、私のプログラム(firefoxxcalcなどxfce4-terminal)のどれもこの方法で始めることはできませんat

奇妙なことは、./s.shbashで実行するとうまくgedit開くことです。

また、実行しようとしましたat(ファイルで - 完全に正しい場合)。

kedar@i5 ~ $ at now + 1 minute -f ./s.sh

atシェルスクリプトの使用方法に問題があるようです。atシェルスクリプトなしで使用できませんか?ありがとうございます。

ベストアンサー1

表示変数を設定する必要があります。

#!/bin/bash
export DISPLAY=":0"
gedit

それから

at now + 1 minute -f test.sh

私のために働くUbuntu 14.04.1 LTS

おすすめ記事