Как изменить редактор crontab по умолчанию
Хотите, чтобы crontab
использовал выбранный вами редактор, а не наоборот? В этом руководстве показано, как это сделать. Эти инструкции будут работать с Linux, macOS и другими Unix-подобными операционными системами.
Щекотливая тема текстовых редакторов
Текстовый редактор выполняет довольно обыденную задачу. Тем не менее глубина чувств, которые люди связывают с их личными предпочтениями, привела к пламенным войнам, которые продолжаются с 1985 года. Мы не разжигаем этот огонь и не защищаем одного редактора над другим. Мы собираемся показать вам, как изменить редактор по умолчанию для crontab
на что-то другое, если вы захотите.
Команда crontab -e
откроет редактор, чтобы вы могли редактировать свою таблицу cron. Ваша таблица cron содержит список всех запланированных заданий, которые вы установили для выполнения в указанное время. В этой статье мы не будем углубляться в детали заданий cron. Мы просто смотрим на редактор, связанный с командой crontab -e
.
При первом вводе команды crontab
с параметром -e
(редактировать) в терминале Bash вас попросят выбрать редактор, который вы хотите использовать. . Введите crontab
, пробел, -e
и нажмите Enter.
crontab -e
Затем выбранный вами редактор используется для открытия вашей таблицы cron. В этом примере нано было выбрано нажатием клавиши 1.
Редактор, который вы выбираете из меню, используется каждый раз, когда вы вводите команду crontab -e
. Если вы позже передумаете, как вы выберете другого редактора, если вы получаете меню только в первый раз? Это легко. Используйте команду select-editor
.
select-editor
Пока так просто. Но что, если вы хотите использовать редактор, которого нет в этом меню? Или что, если вы работаете в операционной системе, в которой нет команды select-editor
? Мы можем справиться и с такими сценариями.
А как насчет дистрибутивов, в которых нет select-editor?
Мы можем установить редактор по умолчанию для crontab
, добавив строку в наш файл .bash_profile. Введите эту команду:
gedit ~/.bash_profile
Когда появится редактор, добавьте эту запись в файл:
экспорт 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.
Linux Commands | ||
Files | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · convert · rclone · shred · srm · scp · gzip · chattr · cut · find · umask · wc | |
Processes | alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · history · at · batch · free · which · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · yes · kill · sleep · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg · pidof · nohup · pmap | |
Networking | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw · arping · firewalld |
RELATED: Best Linux Laptops for Developers and Enthusiasts