sed和regex前置行

时间:2012-07-07 14:41:07

标签: regex replace sed

我正在尝试找到一种搜索文件并在字符串前添加一行的方法 我想搜索

xxx =  text() // '=' folowed by space or not then  'text()'

如果找到:

在此行之前添加

new text

换句话说我想要这个

xxx =  text()

是这样的:

new text
xxx =  text()

我试过这个

find /var/www/users/ \( -name '*.py'   \)  -type f  -exec sed -i 's|\s+\=\s+\text()|new text|i' {} \;

1 个答案:

答案 0 :(得分:2)

我想这样做,我想:

find -iname '*.py' -and -type f | xargs sed -i -e '/= *text()/ i new text'