如何在关键字搜索匹配后在一行前添加注释(#)

时间:2012-08-17 23:14:59

标签: shell sed aix

我有一个crontab文件包含许多数据库名称,例如

10 06 1 * *   script  DEVE_DB1 
10 06 1 * *   script  TEST_DB1 
10 06 1 * *   script  PROD_DB1 
....

我想在整个文件中的#前添加评论TEST_DB1,这样我的cron作业就不会运行所有TEST_DB1个作业。

我在这个网站上找到了以下脚本, sed -e '/TEST_DB1/, s/^/#/'

但是我收到了错误:

sed: 0602-404 Function /TEST_DB1/, s/^/## / cannot be parsed.

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:8)

丢失逗号(空格是可选的):

sed -e '/TEST_DB1/s/^/#/'

鉴于开始/TEST_DB1/,sed期望找到范围中的第二个地址,例如数字$或其他模式。 s不适合任何这些结构,因此错误。