我正在寻找一种方法来确定某个文件是否包含某个字符串。它可以是系统调用或C函数,也没关系。
我尝试使用grep,但它不会返回任何内容
//name is the directory entry name
char grepcmd[150];
strcpy(grepcmd,"grep -c hello ");
strcat(grepcmd, name);
int status = system(grepcmd);
答案 0 :(得分:2)
你做得很好。如果名称为status
的给定文件包含name
字符串,则hello
应为零。否则它应该是非零值。
答案 1 :(得分:1)
如果您正在进行系统调用,则只需mmap()
该文件并调用类似 strnstr()
的内容。 (您将无法拨打真实strnstr()
,因为它会停在您文件中的任何\0
,因此您必须自己编写。{/ p>