如何建设一个门户网站wordpress建站访问提示不安全
grep -nr “搜索内容” 文件路径
其中:
- -n:显示行号
 - -r:递归查找子目录中的文件
 - “搜索内容”:要搜索的内容
 - 文件路径:要搜索的文件路径,可以是单个文件或目录路径(将会递归搜索该目录下的所有文件)
 
示例:
查找文件 /var/log/syslog 中包含字符串 “error” 的行:
grep -n "error" /var/log/syslog
 
查找目录 /home/user 下所有文件中包含字符串 “hello world” 的行:
grep -nr "hello world" /home/user
 
查询头文件中内容
 可以使用以下命令查询头文件中是否包含某个字符串:
grep -r "搜索内容" 文件夹路径 --include "*.h"
 
查找目录 /usr/include 中所有头文件中是否包含字符串 “stdio”:
grep -r "stdio" /usr/include --include "*.h"
 
查询非头文件中内容
可以使用以下命令查询不包含 .h 文件中某个字符串的文件:
grep -rL "搜索内容" 文件夹路径 --include "*.c" --include "*.cpp" --exclude "*.h"
 
例如:
grep -rL "stdio" /home/user/project --include "*.c" --include "*.cpp" --exclude "*.h"
 
只查询.c .h中abc字符串
grep -nr --include=*.{c,h} 'abc' /path/to/directory
 
过滤文件夹方法
可以使用 grep 命令结合 --exclude-dir 参数来过滤掉指定的文件夹。具体命令如下:
grep -r "search_pattern" /path/to/search --exclude-dir=folder1 --exclude-dir=folder2
 
解释一下各参数的含义:
-r:递归搜索指定目录下的文件。"search_pattern":需要搜索的字符串或正则表达式。/path/to/search:需要搜索的目录路径。--exclude-dir=folder1:排除名为folder1的子目录,可以排除多个子目录,例如
--exclude-dir=folder1 --exclude-dir=folder2。
 
执行该命令后,将会在 /path/to/search 目录下搜索所有不包含 folder1 和 folder2 的文件,并输出包含 search_pattern 的行。
需要注意的是,--exclude-dir 参数只会排除指定目录下的文件,而不会排除该目录的子目录。如果需要排除子目录,可以在子目录中再次使用 --exclude-dir 参数排除需要排除的子目录。
查询指定字符
例如:grep -nr 只查询abc,不能出现abcd这样类型的方法
 可以使用正则表达式来限制 grep 命令的搜索范围,从而只查询 abc 而不查询 abcd 等包含 abc 的字符串。具体命令如下:
grep -nrw '/path/to/search' -e 'abc\b' -e 'abc[^d]'
 
解释一下各参数的含义:
-n:显示行号。-r:递归搜索指定目录下的文件。-w:只匹配整个单词,不匹配单词的一部分。/path/to/search:需要搜索的目录路径。-e 'abc\b':使用正则表达式搜索包含单词abc的行,\b表示单词边界。-e 'abc[^d]':使用正则表达式搜索包含单词abc且后面不是d的行,[^d]表示不匹配字符d。
执行该命令后,将会在 /path/to/search 目录下搜索所有包含单词 abc 且不包含 abcd 的文件,并输出包含 abc 的行号和内容。
需要注意的是,该命令只能限制 abc 与其他字符之间的关系,无法限制 abc 与其他字符在同一单词中的情况。如果需要查询 abc 但不查询 abcd,则需要使用正则表达式进行限制。
