Deseja que o crontab utilize o editor de texto da sua preferência em vez da opção padrão? Este guia prático demonstrará como realizar essa configuração. As instruções a seguir são compatíveis com Linux, macOS e outros sistemas operacionais baseados em Unix.
A Complexidade dos Editores de Texto
Um editor de texto, embora possa parecer uma ferramenta simples, carrega consigo uma grande dose de subjetividade. A lealdade ao editor pessoal de preferência já gerou acalorados debates, verdadeiras “guerras de editores”, desde 1985. Não pretendemos acender essa chama, nem defender um editor em detrimento de outro. O nosso objetivo é mostrar como modificar o editor padrão do crontab, caso deseje.
O comando `crontab -e` aciona a abertura de um editor para que possa alterar a sua tabela cron. Esta tabela contém a lista de todas as tarefas agendadas para execução em momentos específicos. Não vamos aprofundar nos detalhes dos cron jobs neste artigo. Nosso foco é o editor vinculado ao comando `crontab -e`.
Ao executar o comando `crontab` com a opção `-e` (editar) pela primeira vez em um terminal Bash, será solicitado a selecionar o editor que pretende utilizar. Digite `crontab`, um espaço, `-e` e pressione Enter.
crontab -e
O editor escolhido será então utilizado para abrir a sua tabela cron. Neste exemplo, o nano foi selecionado ao pressionar a tecla 1.
O editor selecionado no menu será utilizado sempre que executar o comando `crontab -e`. Caso deseje alterar sua escolha, visto que o menu só aparece na primeira vez, como fazer? É simples, utilize o comando `select-editor`.
select-editor
Até agora, tudo simples. Mas e se desejar utilizar um editor que não esteja presente nesse menu? Ou se estiver trabalhando em um sistema operacional que não forneça o comando `select-editor`? Também podemos resolver essas situações.
Distros Sem o Comando `select-editor`
Podemos definir o editor padrão para o crontab adicionando uma linha ao nosso arquivo `.bash_profile`. Execute o seguinte comando:
gedit ~/.bash_profile
Quando o editor abrir, insira esta linha no arquivo:
export VISUAL=”gedit”
Evidentemente, deve substituir o comando que inicia o seu editor de texto preferido por ‘gedit’. Salve o arquivo e feche o editor. Para que as alterações tenham efeito, saia e volte a entrar na sua sessão, ou execute este comando:
. ~/.bash_profile
Note que a linha começa com um ponto. O comando `source` é um atalho para o comando `.` (ponto) e ambos executam a mesma ação. Nem todas as distribuições fornecem o comando `source`. O comando `.` (ponto) deve estar sempre disponível. Ressaltando, o comando `source` estava presente em todas as distribuições testadas para este artigo: Ubuntu, Debian, Manjaro, Arch, Fedora, CentOS e OpenIndiana.
Quer utilize o `.` (ponto) ou a palavra `source`, o comando faz com que as configurações do seu `.bash_profile` sejam lidas e aplicadas à sua sessão atual. Agora, quando digitar:
crontab -e
O editor que especificou será utilizado para abrir a sua tabela cron.
`.bash_profile` Não Vazio
O seu arquivo `.bash_profile` pode não estar vazio quando o edita. Basta rolar até o final e adicionar a linha `export VISUAL = “gedit”` no final do arquivo. Este é o `.bash_profile` padrão no Manjaro Linux, com a nova linha adicionada:
Particularidades do OpenIndiana
No OpenIndiana, é necessário adicionar a linha `export VISUAL = “gedit”` ao seu arquivo `.bashrc`, e não ao `.bash_profile`. O comando a ser executado é:
pluma ~/.bashrc
Adicione a linha, salve o arquivo e feche e reabra a janela do terminal.
Execute o comando `crontab -e` para verificar se as alterações foram aplicadas:
crontab -e
Agora a sua tabela cron será carregada no nano.
Assim, poderá escolher o editor de sua preferência em diversas distribuições Linux, sejam elas baseadas em Debian, RedHat, Arch ou mais próximas de um Unix puro.