以下是我的 cron 文件条目:
#Ansible: test2
*/15 * * * * ansible-playbook /web/playbooks/automation/detect401MORTEN/va_action.yml | tee -a /web/playbooks/automation/detect401MORTEN/cron.out
# #Cron to auto restart MIMSJASPER tomcat server for all environments if it is down
#Ansible: test3
# */15 * * * * ansible-playbook /web/playbooks/automation/detect401MORTEN/va_action.yml | tee -a /web/playbooks/automation/detect401MORTEN/cron.out
下面的 sed 不适用于不区分大小写的情况。
sed '/^#.*morten/s/^#//ig' wladmin.cron
期望的输出:
#Ansible: test2
*/15 * * * * ansible-playbook /web/playbooks/automation/detect401MORTEN/va_action.yml | tee -a /web/playbooks/automation/detect401MORTEN/cron.out
#Cron to auto restart MIMSJASPER tomcat server for all environments if it is down
#Ansible: test3
*/15 * * * * ansible-playbook /web/playbooks/automation/detect401MORTEN/va_action.yml | tee -a /web/playbooks/automation/detect401MORTEN/cron.out
你能建议一下吗?
答案1
您需要使地址选择不区分大小写 - 而不是替换命令。如果您有 sed 的 GNU 实现,则可以将大写I
修饰符应用于地址正则表达式,如下所示:
sed '/^#.*morten/Is/^#//' wladmin.cron
替换标志g
不是必需的 - 事实上,只能有一个锚定模式实例,例如^#
.