it-swarm.asia

Ubuntu'da bash betiğinden bildirim göstermenin bir yolu var mı?

Uygulamanın çoğu, ekranın sağ üst köşesinde görünen olaylarla ilgili güzel bir şekilde biçimlendirilmiş bildirim gösterebilir. Arka planda uzun ömürlü işlemler yapacak bir bash betiği yazmak üzereyim ve ne zaman biteceğini gerçekten bilmek istiyorum. Bir bash betiğinden bu Nice bildirimini nasıl gösterebilirim?

100
vava

Jaunty'deki yeni bildirim sistemini kullanıyorsanız, notify-send komutunu istiyorsunuz.

notify-send - a program to send desktop notifications

SYNOPSIS

With notify-send you can sends desktop notifications to the user via
a notification daemon from the command line.  These notifications can be
used to inform the user about an event or display some form of information
without getting in the user's way.

OPTIONS

-u, --urgency=LEVEL
Specifies the urgency level (low, normal, critical).

-t, --expire-time=TIME
    Specifies the timeout in milliseconds at which to expire the notification.
-i, --icon=ICON[,ICON...]
    Specifies an icon filename or stock icon to display.
-c, --category=TYPE[,TYPE...]
    Specifies the notification category.
118
nagul

Başka bir yol bulundu, Zenity

echo 'message:hi' | zenity --notification --listen

(Bu aynı zamanda Ubuntu’ya halihazırda kurulmuş olması avantajına da sahiptir.)

28
vava

Ayrıca bir pencere açacak olan xmessage vardır, bu nedenle herhangi bir X11 sisteminde çalışması gerekir.

Pro: Ayrıca, kullanıcının düğmelerle etkileşimli olarak yönlendirilmesini sağlar.

Con: Herhangi bir pop-up uyarısı gibi, tipik olarak odağı alır, bu nedenle yazmanın ortasındaysanız, mesajı okumadan önce kaybolabilir.

12
NVRAM

KDE kullanıcıları için:

$ kdialog --title "Long process completed!" --passivepopup "This popup will disappear in 5 seconds" 5 &
10
kolypto

Yfiton adında çapraz platform çözümü var.

$ yfiton -n desktop -Pmessage="Lunch time!" -Pposition=TOP_RIGHT
3
Laurent

10 saniye sonra otomatik olarak kapanan açılır pencere bildirimi:

notify-send "Hello world"

Kaynak: https://superuser.com/a/31919/425838

Tıklamak için düğmeli açılır pencere:

[pencere otomatik odaklanmıyor]

notify-send -t 0 "Hello world"

Kaynak: kendim; not: -thariç tüm değerler için yoksayılır - nasıl aptal . :(


OR
[pencere otomatik odaklanma yapar]

zenity --info --title "Hello" --text "World"

Kaynak: https://askubuntu.com/a/804475/327339


OR

[MY FAVORITE, çünkü pencere belirtilen --timeout 'den sonra otomatik olarak kapanır]

zenity --info --title "Hello" --text "World" --timeout=2

Kaynak: kendim man sayfalarını okudum: man zenity


OR
[süper çirkin görünümlü]

xmessage 'hello world'

Kaynak: http://www.linux-commands-examples.com/xmessage

3
Gabriel Staples

Bir Shell betiğinde, osd_cat yardımcı programını libxosd'dan çağırabilirsiniz.

2
geek