Як отримувати повідомлення в кінці виконання команди в терміналі

Днями, читаючи чудовий блог WebUpd8, я виявив інструмент для отримання повідомлення в кінці виконання по команда в термінал, що може бути корисним у випадках, коли це завдання може зайняти кілька хвилин. Чесно кажучи, я не думаю, що це найкраще рішення. З цієї причини тут ми пропонуємо інші альтернативи, більше практики і просто.

Невідволікай-мене

Рекомендований інструмент Ендрю - Unidstract-me.

Встановлення в Ubuntu та похідні:

sudo add-apt-repository ppa: undistract-me-упаковщики / щодня sudo apt-get update sudo apt-get install undistract-me

Щоб використовувати його, потрібно ввімкнути цю опцію "Запустити команду як термінал для входу" у терміналі за вашим уподобанням. У тому, що поставляється з GNOME, ми можемо ввімкнути цю опцію в Редагувати> Налаштування профілю.

Після встановлення будь-яка команда, яка займає більше 10 секунд, відображатиме повідомлення після завершення.

Щоб встановити Undistract-me на інші дистрибутиви, ви можете знайти інструкції тут.

Інші альтернативи

Перевага методів, показаних нижче, полягає в декількох:

  • вони працюють лише тоді, коли користувач просить про це
  • не вимагають встановлення додаткових програм (зазвичай необхідні пакети вже встановлені майже у всіх популярних дистрибутивах)
  • якщо лінь з’їдає вас, ви можете легко перетворити їх на сценарій
  • вони дуже швидкі, не споживають ресурсів і їх легко вивчити

Повідомте-надішліть

Для відображення повідомлень у стилі Ubuntu потрібно мати встановлене повідомлення-надсилання. Ubuntu, Linux Mint та похідні з цим пакетом встановлюються за замовчуванням. Користувачі Arch можуть встановити його з AUR.

Потім просто додайте && сповістити-надіслати "Готово!" в кінці команди, яку ми хочемо виконати. Припускаючи, що команда для виконання була cat:

cat файл && сповістити-надіслати "Готово!"

Зенітність

Більш «складною» системою сповіщень є Zenity, за допомогою якої ми можемо відображати діалогові вікна за допомогою кнопок тощо.

Як і у випадку повідомлення-надсилання, просто додайте && zenity –info –text = »Готово!» в кінці команди, яку ми хочемо виконати. Припустивши ще раз, що команда для запуску була cat:

cat файл && zenity --info --text = "Тривала команда виконана."
Цікава порада: можна замінити && на; додати елементи до командного ланцюжка, який буде виконано. Наприклад, файл для котів && ls залишився б папка для котів; ls.

Фуенте: webupd8


3 коментарі, залиште свій

Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   Естебан Сарачо - сказав він

    Теоретично це також може спрацювати: «cat file && echo -ea», видає звуковий сигнал в кінці команди (в чакрі це не працює). Щодо підказки (якщо я не неправильно зрозумів), "command1; command2" - це не те саме, що "command1 && command2"; У першому випадку команда2 виконується незалежно від того, чи добре закінчилася команда1, у другому вона виконується лише в тому випадку, якщо команда1 закінчилася правильно. Привітання та добрий пост, мені сподобалось notify-send, дуже практично

  2.   пандакриси - сказав він

    дуже корисний! тестування ...

  3.   Хаві - сказав він

    Привіт, я зазвичай краще використовую цей варіант:
    папка для котів; zenity –info –text = »Довга команда виконана.» &

    Це дозволяє мені надсилати більше одного повідомлення, і термінал не блокується, доки я не натисну.

    привіт