Eu encontrei a resposta, depois de dois dias lutando com sintaxe arcana e referências obscuras.
No documento de ajuda do Gnome Schedule, ele diz:
9.2. Setting DISPLAY variable for tasks that will launch once
When you are creating or modifying a task, you can define the DISPLAY
variable in the script text box. Make the definition at the beginning of the
script.
9.3. Setting DISPLAY variable for tasks that will launch recurrently
Gnome Schedule does not support yet setting environment variables for
recurrent tasks, but it will do soon. In the meantime, you can manually create
a script that first defines DISPLAY variable and then calls the graphical
application. Finally, you can create a recurrent task to launch the script.
Nesse sentido, criei o arquivo de script fred.sh
com o conteúdo:
#!/bin/sh
DISPLAY=:0.0
#home/Harry/testrsync/trial_bak.sh
testrsync/trial_bak.sh
e usou o script fred.sh
como a tarefa agendada. Eu tinha chamado o script de tarefa de teste na minha pergunta trial_bak.sh
. Observe que o script chamado de fred.sh
deve ser referenciado por meio do diretório inicial, ou seja, como a última linha não a comentada acima. Agora funciona e eu recebo a janela de informações desejada.
Note que isso significa que uma pré-visualização "executar uma vez" na configuração do Gnome Schedule pode funcionar, como foi confuso para mim (acho que pode usar at
em vez de cron
), mas precisa ser testado como uma tarefa recorrente para ter certeza.
No começo, adicionei DISPLAY=:0.0
à última linha do script na pergunta, mas descobri que não era necessário
Eu usei xdpyinfo | less
para verificar o que usar em DIPSPLAY=...
, o less
sendo necessário porque uma grande quantidade de informações é divulgada.
Finalmente, descrevi o que descobri e não afirmo que seja definitivo ou completo, ou mesmo inteiramente correto. Eu estaria interessado em qualquer informação extra relevante que alguém possa adicionar,