C语言代码搜索神器for Mac

  • 程序功能
    • 精确搜索一个文件夹中的所有子文件夹中的指定类型文件中的指定字符串,搜索到某个文件中存在指定字符串,则将此文件路径直接输出在终端上。
  • 操作方法
    • 用X-Code编译完成将可执行文件拖到桌面上双击打开后根据提示操作。
  • 代码如下
#include
#include
#include
int search(char a[],char searchString[])
{
    int i,j,k,t=strlen(searchString),s=strlen(a)-t;
    for(i=0;i<=s;i++)
    {
        
        for(j=i,k=0;k>");
        //生成临时文件的全路径
        strcpy(tempFile,folderPath);
        strcat(tempFile,"/temp.txt");
        //生成完整的find命令
        strcat(command,tempFile);
        //执行Unix下的find命令,将搜索到的内容输出到temp.txt文件中
        system(command);
        fTempFile = fopen(tempFile,"r");
        fileNum = 0;
        while(1)
        {
            i=-1;
            //每次得到一个文件的全路径
            while((singleFile[++i]=fgetc(fTempFile))!=10&&singleFile[i]!=EOF);
            
            if(singleFile[i]==EOF)
            {
                break;
            }
            singleFile[i]=0;//文件内容结尾标志
            fSingleFile=fopen(singleFile,"r");//打开文件
            i=0;
            while((ch=fgetc(fSingleFile))!=EOF)
            {
                singleFileContent[i++] = ch;
            }
            singleFileContent[i] = 0;
            if (search(singleFileContent,searchString)) {
                fileNum++;
                printf("\n%d:%s\n\n",fileNum,singleFile);
            }
            
            fclose(fSingleFile);
        }
        fclose(fTempFile);
        //生成删除临时文件的命令
        strcpy(singleFile,"rm ");
        strcat(singleFile,tempFile);
        system(singleFile);//删除临时文件
        if(fileNum==0) printf("\n查询无结果!\n\n");
        
    }
    return 0;
}
  • 结果如下
C语言代码搜索神器for Mac_第1张图片
屏幕快照 2016-06-16 22.30.02.png

你可能感兴趣的:(C语言代码搜索神器for Mac)