regex - sed 和 regex 来添加行

标签 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' {} \;

最佳答案

我想我会这样做:

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

关于regex - sed 和 regex 来添加行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11375931/

相关文章:

regex - 日志文件中的Logstash可选字段

javascript - 删除所有网页文本内容只保留 HTML?

javascript - 如何仅在文本区域的开头删除空格和换行符

javascript - 替换功能不适用于括号 ()

regex - sed linux 命令无法插入行

regex - 以星号*开头的Perl标识符代表什么?

vim 无法查找和替换明显存在的简单短语

java Replace - 替换由空格和换行符分隔的两个标签之间的字符串中的文本

regex - 使用 sed/awk/grep 格式化 git 日志输出

bash - 在 bash 中删除以 pattern 开头的单词