GNOME 3.18を搭載したUbuntu GNOME 15.10でデスクトップ通知がどのように表示されるのかと疑問に思っていましたか?つまり、これらのデスクトップ通知の1つを取得して、指定したテキストを表示するにはどうすればよいですか。
これを実行できるコマンドまたはスクリプトを実行できれば、システム内の情報について通知を受けることができれば便利です。
GNOME 3.16や他のデスクトップ環境でも同じように。通知は、コマンドラインから通知デーモンを介して送信できます。
このコマンドはパッケージlibnotify-bin
の一部であり、*-desktop
メタパッケージによってインストールされます。
依存関係は、libc6
、libglib2.0-0
、libnotify4
です。 strace
を実行して、通知の方法を確認します。
% strace -e open notify-send foo bar
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libnotify.so.4", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libglib-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libffi.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libpcre.so.3", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libselinux.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
独自の通知を送信するには
notify-send foo bar
man notify-send
から:
SYNOPSIS
notify-send [OPTIONS] <summary> [body]
OPTIONS
-u, --urgency=LEVEL Specifies the urgency level (low, normal,
critical).
-t, --expire-time=TIME
The duration, in milliseconds, for the notification to appear
on screen. (Ubuntu's Notify OSD and GNOME Shell both ignore
this parameter.)
-i, --icon=ICON[,ICON...]
Specifies an icon filename or stock icon to display.
-c, --category=TYPE[,TYPE...]
Specifies the notification category.
Help options:
-?, --help
Show this help message
-h, --hint=TYPE:NAME:VALUE
Specifies basic extra data to pass. Valid types are int,
double, string and byte.