Надіслати сповіщення до Центру сповіщень із командного рядка в OS X
Зміст:
- Встановлення Terminal Notifier
- Використання програми сповіщення терміналу для публікації в центрі сповіщень
- Зроблення сповіщень інтерактивними: відкриття URL-адрес, програм і виконання команд терміналу
Використовуючи чудовий сторонній інструмент під назвою terminal-notifier, ви можете надсилати сповіщення та повідомлення до Центру сповіщень безпосередньо з командного рядка. Це має безліч потенційно дійсних застосувань, але один фантастичний варіант використання полягає в тому ж ключі: усне сповіщення про завершення команди або надсилання сповіщення про позначку, але замість цього публікується сповіщення в Центрі сповіщень OS X Mountain Lion.
Встановлення Terminal Notifier
Припускаючи, що у вас Ruby на Mac, ви можете легко встановити сповіщувач терміналу за допомогою gem:
sudo gem install terminal-notifier
Для тих, хто не має Ruby, ви можете завантажити попередньо зібраний двійковий файл із GitHub, але щоб запустити програму сповіщення терміналів, вам потрібно вказати її на двійковий файл у наборі додатків таким чином:
./terminal-notifier.app/Contents/MacOS/terminal-notifier
Якщо ви підете останнім шляхом, вам краще створити псевдонім у bash_profile. Для цілей цієї статті ми припустимо, що ви встановили його через ruby.
Використання програми сповіщення терміналу для публікації в центрі сповіщень
Після встановлення, використання команди в її найпростішому ядрі виглядає так:
"terminal-notifier -message Привіт, це моє повідомлення>"
Опублікувати повідомлення після завершення команди легко, просто додайте сповіщення терміналу так:
"ping -c 5 yahoo.com && terminal-notifier -message Завершено пінгування yahoo>"
Це публікує неінтерактивне сповіщення, але, копаючи глибше, ви також можете запускати програми, виконувати команди терміналу та відкривати URL-адреси.
Зроблення сповіщень інтерактивними: відкриття URL-адрес, програм і виконання команд терміналу
Навіть кращими є команди -open і -activate, які дозволяють вам вказати URL-адресу або програму для активації після натискання сповіщення. Наприклад, при натисканні відкриється osxdaily.com:
"terminal-notifier -message Перейдіть на OSXDaily.com, це найкращий сайт!>"
Сповіщення публікується в Центрі сповіщень, і якщо натиснути, воно відкриває osxdaily.com у веб-переглядачі за замовчуванням.
У наступному прикладі буде відкрито TextEdit, якщо ви натиснете на сповіщення:
"terminal-notifier -message Time to braindump into TextEdit - title Braindump -activate com.apple.TextEdit "
Ви також можете виконувати команди терміналу, якщо сповіщення взаємодіє з:
"terminal-notifier -message Time to run your backups - title Backup Script -execute backupscript"
Це лише кілька прикладів, але, очевидно, існує нескінченна кількість застосувань такої речі. Зважаючи на те, наскільки це корисно, я здивований, що Apple не включила спосіб зробити це в OS X, хоча колись це може змінитися. Тим часом скористайтеся терміналом сповіщення, це чудовий інструмент.