关注IT
关注系统玩家

【原创】定位需要替换关键字的文件

有时候我们需要对很多文件里面的某些字词或者语句做修改,但又不知道具体哪些文件有需要修改的内容。今天我们就用代码来定位这些文件,只需要我们知道要修改内容的某一个关键字。

例如:findstr /s “关键字” *.php 寻找当前目录下(/s代表当前目录下)含有“关键字”的PHP文件。

打开CMD命令提示符工具(windows 键+R键),我们输入findstr /? 回车就可以看到系统给我们的帮助文件,命令的具体用法与相关参数都详细显示出来,如下显示

C:\Users\Think>findstr /?
在文件中寻找字符串。

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
[/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
strings [[drive:][path]filename[ …]]

/B         在一行的开始配对模式。
/E         在一行的结尾配对模式。
/L         按字使用搜索字符串。
/R         将搜索字符串作为一般表达式使用。
/S         在当前目录和所有子目录中搜索匹配文件。
/I         指定搜索不分大小写。
/X         打印完全匹配的行。
/V         只打印不包含匹配的行。
/N         在匹配的每行前打印行数。
/M         如果文件含有匹配项,只打印其文件名。
/O         在每个匹配行前打印字符偏移量。
/P         忽略有不可打印字符的文件。
/OFF[LINE] 不跳过带有脱机属性集的文件。
/A:attr    指定有十六进位数字的颜色属性。请见 “color /?”
/F:file    从指定文件读文件列表 (/ 代表控制台)。
/C:string  使用指定字符串作为文字搜索字符串。
/G:file    从指定的文件获得搜索字符串。 (/ 代表控制台)。
/D:dir     查找以分号为分隔符的目录列表
strings    要查找的文字。
[drive:][path]filename
指定要查找的文件。

除非参数有 /C 前缀,请使用空格隔开搜索字符串。
例如: ‘FINDSTR “hello there” x.y’ 在文件 x.y 中寻找 “hello” 或
“there”。’FINDSTR /C:”hello there” x.y’ 文件 x.y  寻找

“hello there”。

一般表达式的快速参考:
.        通配符: 任何字符
*        重复: 以前字符或类出现零或零以上次数
^        行位置: 行的开始
$        行位置: 行的终点
[class]  字符类: 任何在字符集中的字符
[^class] 补字符类: 任何不在字符集中的字符
[x-y]    范围: 在指定范围内的任何字符
\x       Escape: 元字符 x 的文字用法
\<xyz    字位置: 字的开始
xyz\>    字位置: 字的结束

此方法适用于 windows xp,windows 7,windows 8,windows 10等windows操作系统。

未经允许不得转载:系统玩家 » 【原创】定位需要替换关键字的文件

分享到:更多 ()
喜欢 0
rancher

评论 1

评论前必须登录!

  1. #1

    test

    系统玩家4年前 (2015-03-22)