З цим вступом з нашого кронтаба
1 3 1 * * Знайти / var / log / tomcat / * -mtime +61-тип f-видалити
Я хочу, щоб відповідати 5-й пробіл, щоб я міг відокремити частину команди від частини поля часу. Cron може мати різні формати, тому я хочу мати можливість відповідати DOW як sun або 0.
Регулярний вираз, який я використовую у vim, що відповідає першому простору, замінює на місце "T".
:g/\*/s/\(\ \)\{1\}/T/
Що мені не вистачає, щоб відповідати n або 5 місцям. Це нічого не робить
:g/\*/s/\(\ \)\{5\}/T/
Я хочу генерувати розбивку, коли команди виконуються в cron, щоб спробувати збалансувати навантаження на наших серверах.
Додаток
Я розумію, що я роблю неправильно з вищезазначеним пошуком / замінами.
(\ \)\{5\}
Це розширюється до п'яти просторів один за одним, а не до п'ятого простору, оскільки між пробілами знаходяться символи.
Це працює до п'ятого простору, але заміна "1" не включає в себе весь відповідний атом.
:g/*/s/\([0-9A-Za-z*\/,]* \)\{5}/\1 T /
він залишає наступне після заміни.
* T find /var/log/tomcat/* -mtime +61 -type f -delete
Шукаю
1 3 1 * * T find /var/log/tomcat/* -mtime +61 -type f -delete