Komentarz podlinkowany tutaj: Czy istnieje sposób na przejrzenie historii powiadomień? , zapytał:
Czy można to zrobić bez dodawania kolejnego PPA?
tak
Otwórz dwa okna terminala ( Ctrl+ Alt+ T+ T). Dodatkowe okno jest potrzebne tylko do celów testowych.
Monitoruj powiadomienia w jednym z okien terminala za pomocą:
dbus-monitor "interface='org.freedesktop.Notifications'" | \
grep --line-buffered "member=Notify\|string"
(aby go zatrzymać, zamknij okno lub wpisz Ctrl+ C)
Pamiętaj, że uruchomienie tego skryptu pokazuje tylko powiadomienia pojawiające się od momentu jego uruchomienia i należy je uruchomić przed procesami i aps. dla których historia jest pożądana. Jeśli okno terminal ma niewystarczającą wielkość scrollback albo zmienić linie przewijania w Edit > Profile Preferences > Scrolling lub nagrać historię, jak to opisano dalej.
Aby zapisać wynik w trwałym dzienniku, po prostu przekieruj go do pliku, dodając
go na końcu wiersza. Aby nagrywać i wyświetlać powiadomienia, dołączają się do linii.>>path/filename.ext
grep
| tee >>path/filename.ext
grep
Sprawdź to.
- Korzystanie z Pangolin 12.04 Live SD / USB
- Wyłącz i włącz sieć bezprzewodową.
- Użyj drugiego okna terminala, aby dokonać innych powiadomień za pomocą:
dla i w {0..100..20};
zrobić
killall powiadomienie-osd;
powiadom-wyślij „testowanie $ i” $ i;
spać 0,5;
gotowy
Wyniki
Legalne wykorzystywanie grep
i sed
itd. Można całkiem wydrukować informację, że są z grubsza przedstawione poniżej są monitorowane przykłady. Tekst pasujący do graffiti w wyskakujących okienkach powiadomień jest pokazany w bold
. Dwa ciągi poprzedzające te są ap. sprawiając, że graffiti (tj. „NetworkManager” lub „powiadom-wyślij”) i nazwa ikony, jeśli istnieje, (tj. „powiadomienie-sieć-bezprzewodowo rozłączony”), aby pojawiły się w wyskakującym okienku.
ciąg „: 1.380”
wywołanie metody sender =: 1.14 -> dest =: 1.379 serial = 8691
ścieżka = / org / freedesktop / Notifications;
interfejs = org.freedesktop.Notifications; member = Powiadom
ciąg „NetworkManager”
ciąg „notification-network-wireless-odłączony”
ciąg „ MissingLink ”
ciąg „ Rozłączono - jesteś teraz offline ”
ciąg „pilność”
ciąg „przejściowy”
wywołanie metody sender =: 1.14 -> dest =: 1.379 serial = 8782
ścieżka = / org / freedesktop / Notifications;
interfejs = org.freedesktop.Notifications; member = Powiadom
ciąg „NetworkManager”
ciąg „powiadomienie-sieć-bezprzewodowa-pełna”
ciąg „ MissingLink ”
ciąg „ Połączenie nawiązane ”
ciąg „pilność”
ciąg „przejściowy”
wywołanie metody sender =: 1.386 -> dest =: 1.389 serial = 7
ścieżka = / org / freedesktop / Notifications;
interfejs = org.freedesktop.Notifications; member = Powiadom
ciąg „powiadom-wyślij”
strunowy ""
ciąg „ testowanie 0 ”
ciąg „ 0 ”
ciąg „pilność”
. . .
wywołanie metody sender =: 1.426 -> dest =: 1.429 serial = 7
ścieżka = / org / freedesktop / Notifications;
interfejs = org.freedesktop.Notifications; member = Powiadom
ciąg „powiadom-wyślij”
strunowy ""
ciąg „ testowanie 80 ”
ciąg „ 80 ”
ciąg „pilność”
wywołanie metody sender =: 1.430 -> dest =: 1.433 serial = 7
ścieżka = / org / freedesktop / Notifications;
interfejs = org.freedesktop.Notifications; member = Powiadom
ciąg „powiadom-wyślij”
strunowy ""
ciąg „ testowanie 100 ”
ciąg „ 100 ”
ciąg „pilność”
odsyłacze:
... do zrobienia ...