GUI uygulaması cron'dan nasıl başlatılır?


18

Bir Firefox'tan Java uygulaması çalıştırmam gerekiyor. Sorun şu ki, bu Firefox'u bir crondan çalıştırmam gerekiyor. Komut satırından ve iyi çalışırsa, ancak komutu cron'a koyduğumda başarısız oldu:

*/1 * * * * firefox http://domain.com/iqms/packetloss/iqmspacket2.html

1
Sen kullanabilirsiniz Selenyum sadece bunu açarak daha fazla işlevleri gerekirse 'ın java kütüphanesi.
Övünç Metin

Selenium'u komut dosyaları için daha kolay olan python ile de kullanabilirsiniz .
ESala

Yanıtlar:


25

Cron, ekran yöneticisi hakkında hiçbir şey bilmeyen bir ortamda çalışır ( $DISPLAYayarlanmadı). Test ettiğiniz terminal pencerenizde bu ayar vardır. Eğer bunu "gerçek" bir terminalde ya da SSH üzerinden denediyseniz, koptuğunu görürsünüz.

Yalnızca bir X sunucunuz çalışıyorsa, yalnızca ekranın belirtilmesi işe yarayabilir:

* * * * *    DISPLAY=:0 firefox ...

Muhtemelen varsaymak yerine hangi ekranın altında oturduğunu bulmak için daha fazla çaba harcayabilirsiniz, :0ancak bu muhtemelen çoğu zaman işe yarayacaktır.

Yalnızca bir şeyi yeniden yüklemeniz gerekiyorsa, Sekme Otomatik Yeniden Yükleme veya benzer Firefox eklentilerine bakın.


Bu cevabı buldum ama yine de firefox'u başlatmıyor. Birkaç aramadan sonra, kök yerine geçerli bir kullanıcı olarak çalıştırmam gerektiğini buldum. * * * * * "EKRAN =: 0.0 / usr / bin / firefox -yeni pencere x.com/iqms/packetloss/iqmspacket2.html "
fadabi Nawi

1
@fadabiNawi Bunu yönetmenin daha kolay bir yolu, cron hattını doğru kullanıcının crontab'ına kurmak olacaktır. İstediğiniz gibi giriş yapın vecrontab -e
Oli

7

Oli cevap ek arıyorum bu cevap bulundu:

Birkaç aramadan sonra, kök yerine geçerli bir kullanıcı olarak çalıştırmam gerektiğini buldum.

* * * * * su fadabi -c "DISPLAY=:0.0 /usr/bin/firefox -new-window x.com/iqms/packetloss/iqmspacket2.html"; 

tq


Bu yardımcı oldu, çok teşekkürler! Sadece bir not: Firefox'a tam yol zorunludur, bunun farkında değildim ve işe yaramadı
aexl
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.