Бажаєте самостійно обирати текстовий редактор для роботи з crontab, а не погоджуватися на нав’язаний? Цей посібник розповість, як це зробити. Інструкції підходять для Linux, macOS та інших UNIX-подібних операційних систем.
Текстові редактори: вічна суперечка
Текстовий редактор – інструмент для доволі простої задачі. Однак, прихильність користувачів до певних редакторів породила гарячі дискусії, що тривають з 1985 року. Ми не прагнемо підлити масла у вогонь і не будемо відстоювати перевагу одного редактора над іншим. Ми просто покажемо, як змінити редактор, який використовується за замовчуванням для crontab, якщо ви цього забажаєте.
Команда crontab -e
відкриває текстовий редактор для редагування вашої таблиці cron. У цій таблиці зберігається список запланованих задач, які мають виконуватися у визначений час. В рамках цієї статті ми не будемо детально розглядати механізм роботи cron. Нас цікавить лише редактор, що асоційований з командою crontab -e
.
Коли ви вперше вводите команду crontab -e
в терміналі Bash, вам буде запропоновано обрати редактор, який ви хочете використовувати. Введіть crontab
, пробіл, -e
і натисніть Enter.
crontab -e
Обраний вами редактор буде використовуватись для відкриття таблиці cron. У цьому прикладі було обрано nano, натиснувши клавішу 1.
Редактор, який ви виберете з меню, буде запускатися щоразу, коли ви вводите команду crontab -e
. Що робити, якщо ви пізніше захочете змінити свій вибір, але меню з’являється лише один раз? Це легко виправити за допомогою команди select-editor
.
select-editor
Поки що все просто. Але як бути, якщо ви хочете використовувати редактор, якого немає в меню? Або якщо ви працюєте в операційній системі, що не має команди select-editor
? Ми розглянемо і ці випадки.
Що робити, якщо немає команди select-editor?
Ми можемо встановити редактор за замовчуванням для crontab, додавши рядок до файлу .bash_profile
. Скористайтесь цією командою:
gedit ~/.bash_profile
Коли редактор відкриється, додайте в файл наступний запис:
export VISUAL="gedit"
Звичайно, замість “gedit” ви можете вказати команду, що запускає потрібний вам редактор. Збережіть файл і закрийте редактор. Щоб зміни вступили в силу, потрібно вийти із системи і знову увійти, або виконати команду:
. ~/.bash_profile
Зверніть увагу, що рядок починається з крапки (.
). Команда source
є псевдонімом для крапки і виконує ту ж дію. Однак, не всі дистрибутиви надають команду source
. Команда “крапка” завжди повинна бути присутньою. Зважаючи на це застереження, команда source
є присутня в усіх дистрибутивах. Ця стаття була перевірена на Ubuntu, Debian, Manjaro, Arch, Fedora, CentOS та OpenIndiana.
Незалежно від того, чи введете ви крапку, чи слово source
, команда зчитує налаштування з вашого .bash_profile
та застосовує їх до поточної сесії. Тепер, якщо ви введете:
crontab -e
Редактор, який ви вказали, буде використовуватись для відкриття таблиці cron.
Файл .bash_profile може бути не порожнім
Ваш файл .bash_profile
може вже містити певні записи. Просто прокрутіть його до кінця і додайте рядок export VISUAL="gedit"
в кінець файлу. Нижче показано стандартний .bash_profile
в Manjaro Linux з доданим новим рядком:
Спеціально для OpenIndiana
В OpenIndiana вам потрібно додати рядок export VISUAL="gedit"
у файл .bashrc
, а не в .bash_profile
. Команда для цього:
pluma ~/.bashrc
Додайте рядок, збережіть файл, закрийте і знову відкрийте вікно терміналу.
Виконайте команду crontab -e
, щоб переконатися, що зміни спрацювали:
crontab -e
Тепер ваша таблиця cron відкривається в nano.
Отже, ви можете вказати потрібний вам редактор на багатьох дистрибутивах Linux, незалежно від того, чи походять вони від Debian, RedHat, Arch, або наближені до ванільного Unix.