6 个版本

0.0.7 2024年1月1日
0.0.6 2023年10月24日
0.0.4 2023年7月4日
0.0.2 2023年6月25日

#751 in 文本处理

MIT 许可证

6.5MB
824

Rep

rep 是一个命令行实用程序,它通过标准输入接收 grep 格式的行,并对它们执行查找和替换。默认情况下,它将更改的 diff 预览输出到标准输出,并且可以使用标志将其写入文件。

Find & replace with rep

示例

foo 替换为 bar 并输出 diff 到标准输出

grep -n foo *` | rep foo bar

添加 -w 标志以就地写入更改

grep -n foo *` | rep foo bar -w

需要 -n (--line-number) 选项,以便 grep 为每个匹配项输出行号。

安装

rep 通过 cargo 提供

cargo install rep-grep

配置

默认的分页器是 less,可以使用 REP_PAGER 环境变量来覆盖分页器(例如,在 Bash 中使用 export REP_PAGER=delta)。

帮助

rep -h(或 rep --help--help 提供了一些选项的更详细说明)将列出所有命令行标志的帮助信息。

致谢

  • rep 受到 Emacs 的 wgrep 启发,它允许在 Emacs 缓冲区中编辑 grep 结果,然后将这些更改写入源文件。
  • 大部分的功能和源代码的整体结构是从sd借用的。rep最初是sd的一个分支。
  • rep的指定自定义分页代码是从delta借用的。

依赖项

~11-22MB
~312K SLoC