特定のファイルに特定の文字列が含まれているかどうかを判断する方法を探しています。システムコールでもC関数でもかまいません。
grepで試しましたが、何も返されません
//name is the directory entry name
char grepcmd[150];
strcpy(grepcmd,"grep -c hello ");
strcat(grepcmd, name);
int status = system(grepcmd);
貴方は良くやっていますよ。status
名前付きの指定されたファイルに文字列name
が含まれている場合は、ゼロにする必要がありhello
ます。それ以外の場合は、ゼロ以外の値にする必要があります。
システムコールが必要な場合はmmap()
、ファイルを作成して、のようなもの strnstr()
を呼び出します。strnstr()
(実際のファイルはファイル内のどこでも停止するため、実際のファイルを呼び出すことはできません\0
。そのため、独自のファイルを作成する必要があります。)