Гид по технологиям

Today Scripts: виджеты для Notification Center в Yosemite

5 min read macOS Обновлено 13 Apr 2026
Today Scripts для Notification Center в Yosemite
Today Scripts для Notification Center в Yosemite

Скриншот Центра уведомлений Yosemite с виджетами

Если есть кусочек информации, который вы хотите видеть регулярно — вам нужен Today Scripts (скачайте приложение отдельно). Это простое Mac-приложение даёт возможность добавить практически любую информацию в новый Центр уведомлений Yosemite — достаточно правильной команды.

Добавление виджета Today Scripts в Центр уведомлений Yosemite

Коротко: Today Scripts выполняет shell-команды и показывает их вывод как виджет в табе «Сегодня». Если вы когда‑то использовали GeekTool или Übersicht для красивых виджетов на рабочем столе, вы поймёте мощь подхода: теперь те же идеи можно поместить в Notification Center.

Важно: Today Scripts — это интерфейс для запуска команд. Команда выполняется с теми правами и окружением, которые задаёт приложение, поэтому следуйте советам по безопасности ниже.

Что такое Today Scripts (одно предложение)

Today Scripts — приложение, которое берёт вывод любой команды в Terminal и отображает его как виджет в Центре уведомлений OS X Yosemite.

Как это работает — краткая методология

  1. Установите Today Scripts и откройте его.
  2. Создайте новый скрипт/виджет и в поле команды вставьте нужную shell-команду.
  3. Настройте частоту обновления и заголовок виджета.
  4. Добавьте виджет в Центр уведомлений через «Изменить» в табе Сегодня.

Критерии приёмки

  • Виджет отображается в Центре уведомлений.
  • Вывод команды читаем и не ломает верстку.
  • Частота обновления соответствует ожиданиям (например, не чаще 30s для тяжёлых команд).

Готовые команды и примеры

Ниже — подборка команд, которые я использовал. Просто вставьте их в Today Scripts и добавьте в Центр уведомлений.

Календарь на месяц с выделенной текущей датой

Иногда нужно быстро узнать день недели для даты или посмотреть календарь целиком. Команда cal показывает текущий месяц в Terminal; следующая версия выделит текущую дату цветом:

cal | grep --before-context 6 --after-context 6 --color -e " $(date +%e)" -e "^$(date +%e)"  

Результат — компактный календарь с подсказкой, где сегодня.

Источник: Command Line Fu.

Время в разных часовых поясах (списком)

Вместо циферблатов удобнее список с именами городов и временем:

echo "Denver `export TZ='US/Mountain';date +'%\-l:%M %p';unset TZ`"  
echo "London `export TZ='Europe/London';date +'%\-l:%M %p';unset TZ`"  
echo "Paris `export TZ='Europe/Paris';date +'%\-l:%M %p';unset TZ`"  
echo "Mumbai `export TZ='Asia/Kolkata';date +'%\-l:%M %p';unset TZ`"  
echo "Sydney `export TZ='Australia/Sydney';date +'%\-l:%M %p';unset TZ`"  

Хочется другие зоны? Проверьте список tz database (например, в Википедии) и подставьте нужные значения после TZ=.

Вдохновлено виджетом для Übersicht.

Что в буфере обмена

Быстрое отображение содержимого clipboard:

pbpaste  

Цитата дня с BrainyQuote

Немного мотивации между задачами:

curl --silent www.brainyquote.com/quotes_of_the_day.html | egrep '(span class="bqQuoteLink")|(div class="bq-aut")' | sed -n '1p; 2p; ' | sed -e 's/<[^>]*>//g'  

Этот однострочник вытаскивает «Quote Of The Day» и показывает его в Центре уведомлений.

Быстрый обзор системы с iStats

Пример вывода iStats в Today Scripts: CPU, вентиляторы, батарея

Если установлен iStats, просто укажите команду “istats” — и вы получите данные по CPU, вентиляторам и батарее. Установка iStats требует базовых навыков работы в Terminal.

Статус батареи

Показывает процент заряда и время до полного заряда/разряда:

pmset -g batt | { read; read n status; echo "$status"; }  

Источник: вики Today Scripts.

Приложения-лидеры по использованию RAM

Для быстрого понимания, кто ест память:

ps xmo rss=,pmem=,comm= | while read rss pmem comm; ((n++<5)); do  
  
  size="$[rss/1024]";  
  short=$[4-${#size}];  
  size="(${size}M)";  
  i=0;  
  while ((i++ < short)); do size=" $size"; done;  
  
  pmem="${pmem%%.*}"  
  if   (($pmem >= 20)); then color=$'\e[31m';  
  elif (($pmem >= 10)); then color=$'\e[33m';  
  else                       color=$'\e[32m ';  
  fi;  
  
  echo "$color$pmem% $size $(basename "$comm")"$'\e[0m'"";  
  done  

(Сохранён формат оригинальной команды; цвета помогают быстро идентифицировать тяжёлые процессы.)

Источник: Today Scripts Wiki.

Приложения-лидеры по CPU

Как выше, но для загрузки процессора:

ps xro %cpu=,comm= | while read cpu comm; ((i++<5)); do echo $cpu% $(basename "$comm"); done  

Источник: Today Scripts Wiki.

Внешний (публичный) IP

Быстрая команда, чтобы узнать ваш внешний IP:

curl ifconfig.me  

Источник: commandlinefu.com.

Примечание: если вы на VPN, вывод покажет адрес VPN-провайдера — ожидаемое поведение.

Альтернативы и когда это не подходит

  • Если вам нужны «красивые» графические виджеты прямо на рабочем столе, рассмотрите GeekTool или Übersicht.
  • Если вы работаете в более новых версиях macOS, поведение Центра уведомлений может отличаться — проверьте совместимость Today Scripts с вашей версией.
  • Для графиков и долгосрочного мониторинга лучше использовать специализированные инструменты (например, Prometheus/Graphite на серверах) — Today Scripts хорош для быстрых срезов и напоминаний.

Ментальные модели и эвристики

  • «Terminal → Виджет»: думайте о Today Scripts как о трубопроводе, который превращает текстовый вывод команды в виджет.
  • Не делайте виджетов тяжёлыми: чем дольше выполняется команда, тем хуже UX. Для тяжёлых операций используйте кеширование или более редкие обновления.
  • Минимизируйте побочный вывод: оставьте только то, что полезно при быстром взгляде.

Безопасность и конфиденциальность

Важно

  • Не вставляйте и не запускайте команды, если вы не понимаете, что они делают.
  • Не храните секреты (пароли, токены) в командах виджетов. Любой пользователь с доступом к вашей учётной записи может увидеть команду или её вывод.
  • Ограничьте частоту обновления для команд, обращающихся к интернету, чтобы избежать утечек или нежелательной нагрузки.
  • При использовании внешних сервисов (curl к сайтам) учитывайте политику приватности сервиса.

Шаблоны и сниппеты — быстрого старта

Короткие шаблоны, которые можно скопировать и настроить:

  • Список задач из файла todo.txt:
cat ~/todo.txt | sed -n '1,10p'  
  • Простейший таймер обратного отсчёта (пример использования с скриптом):
# файл ~/bin/countdown.sh
SECONDS=3600
while ((SECONDS>0)); do
echo "Осталось $SECONDS секунд"
sleep 60
done

Затем в Today Scripts: /bin/bash ~/bin/countdown.sh

  • Быстрый доступ к сегодняшним событиям с iCalBuddy (если установлен):
iCalBuddy -n -nc -li 3 eventsToday  

(iCalBuddy — отдельно устанавливаемая утилита.)

Роли и чек-листы

Для администратора macOS

  • Проверить права запуска Today Scripts.
  • Убедиться, что обновления ОС не ломают интеграцию.
  • Документировать используемые команды.

Для продвинутого пользователя

  • Настроить цветной вывод для процессов.
  • Использовать текстовые парсеры (awk, sed) для читаемости.
  • Настроить частоту обновлений под нагрузку.

Для обычного пользователя

  • Добавить полезные вещи: погода, часовые пояса, быстрый календарь.
  • Не копировать сложные команды без понимания.

Критерии приёмки для нового виджета

  • Виджет добавлен и виден в Центре уведомлений.
  • Команда завершается за разумное время (<10 s для интерактивных виджетов).
  • Вывод читаем на экране без горизонтальной прокрутки.
  • Нет утечек секретов в выводе.

Диаграмма принятия решений (простая)

flowchart TD
  A[Хочу добавить информацию в Notification Center?] --> B{Нужен текст или графика?}
  B -->|Текст| C[Today Scripts 'команда -> вывод']
  B -->|Графика| D[Универсальные виджеты: Übersicht / GeekTool]
  C --> E{Нужен частый апдейт?}
  E -->|Да| F[Оптимизировать команду, уменьшить частоту]
  E -->|Нет| G[Добавить виджет и настроить расписание]

Часто задаваемые вопросы

Что такое Today Scripts?

Today Scripts — приложение для отображения вывода shell-команд в Центре уведомлений OS X Yosemite.

Как добавить свою команду?

Откройте Today Scripts, создайте новый виджет, вставьте команду в поле ввода, сохраните и добавьте виджет в таб «Сегодня» через «Изменить».

Безопасно ли запускать команды через Today Scripts?

Безопасность зависит от команды. Не вставляйте неизвестные или подозрительные команды. Не храните секреты в командных строках.

Итог и рекомендации

Today Scripts — простой и гибкий способ сделать Центр уведомлений действительно информативным. Используйте его для быстрых срезов состояния системы, простых напоминаний и удобных справочных выводов. Помните о безопасности, оптимизируйте команды и не перегружайте интерфейс тяжёлыми операциями.

Поделитесь своими командами ниже — какие виджеты добавите вы?

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Установка Windows 10 в KVM на Linux
Виртуализация

Установка Windows 10 в KVM на Linux

Как оценить срок службы SSD и продлить его
SSD

Как оценить срок службы SSD и продлить его

Double Tap на старых Apple Watch — как включить
Руководство

Double Tap на старых Apple Watch — как включить

Как перенести секретные чаты Telegram на Android
Мобильные приложения

Как перенести секретные чаты Telegram на Android

Как разобрать и почистить контроллер Xbox One
Ремонт контроллеров

Как разобрать и почистить контроллер Xbox One

Удалённый доступ к Windows 10/11 с Mac — настройка
Инструкции

Удалённый доступ к Windows 10/11 с Mac — настройка