【发布时间】:2012-01-26 13:31:40
【问题描述】:
每次出现这种情况(大约每几个月一次)时,我最终都会花费太长时间试图找出一个 bash 脚本来完全满足我的需求。我很确定我想要的与其他人想要的相似,但是当我进行快速搜索时,在线可用的脚本往往过于简单并且不做这些事情(而且我自己的 bash 脚本编写技能也不好足以弄清楚):
- 需要递归(遍历整个文件夹树)
- 它必须允许我选择文件类型(例如“*.js”),因为有时文件夹树包含不应搜索的二进制文件和其他文件类型
- 它应该就地替换文本,编辑现有文件
- 它不应该导致源代码控制(git、svn)认为文件已被修改,除非它实际上已被修改(我不知道为什么,但 sed 似乎这样做)
- 应该允许正则表达式
最简单的方法是什么?我的意思是,我可以用python写一个脚本,只有几行,但我觉得这在shell中应该很容易完成。
【问题讨论】:
标签: bash shell search replace sed