Com esta entrada do nosso crontab
1 3 1 * * find /var/log/tomcat/* -mtime +61 -type f -delete
Eu quero combinar o char de espaço 5 para que eu possa separar a parte de comando da parte do campo de tempo. O Cron pode ter diferentes formatos, então eu quero ser capaz de igualar o DOW como sun ou 0.
A expressão regular que estou usando no vim que corresponde ao primeiro espaço é substituída por "T".
:g/\*/s/\(\ \)\{1\}/T/
O que eu estou perdendo para combinar com o enésimo ou quinto espaço. Isso não faz nada
:g/\*/s/\(\ \)\{5\}/T/
Eu quero gerar uma quebra de quando os comandos são executados no cron para tentar equilibrar a carga em nossos servidores.
Adendo
Eu entendo o que estava fazendo de errado com as pesquisas / substituições acima.
(\ \)\{5\}
Isso é expandido para cinco espaços um após o outro e não o quinto espaço, pois há caracteres entre os espaços.
Este trabalho até o quinto espaço, mas a substituição "\ 1" não inclui o todo do átomo correspondente.
:g/*/s/\([0-9A-Za-z*\/,]* \)\{5}/ T /
deixa o seguinte após a substituição.
* T find /var/log/tomcat/* -mtime +61 -type f -delete
Estou procurando
1 3 1 * * T find /var/log/tomcat/* -mtime +61 -type f -delete