您的位置:首页 > 移动开发 > 微信开发

USB挂载小程序(无注释)

2017-04-05 09:45 218 查看
#include <stdio.h>

#include <unistd.h>

#include <sys/types.h>

#include <sys/stat.h>

#include <fcntl.h>

#include <stdlib.h>

#include <string.h>

#include <Linux/kernel>

static unsigned long get_file_size(const char *path)

{

    struct stat statbuff;

    if(stat(path, &statbuff) >= 0){

        return statbuff.st_size;

    }

    return -1;

}

static unsigned int print_mount_point(void)

{

    int fd = -1;

    int size = 0;

    int i = 0;

    int j = 0;

    char strBuf[100];

    char *p;

    system("cat /proc/mounts > ./.1.txt");

    unsigned long fileSize = get_file_size("./.1.txt");

    system("rm ./.1.txt");

    char *buffer = (char *)malloc(fileSize + 1);

    char *tmpBuf = (char *)malloc(fileSize + 1);

    if(NULL == buffer || NULL == tmpBuf)

    {

        printf("%s malloc error \n", __func__);

        return -1;

    }

    fd = open("/proc/mounts", O_RDONLY);

    if(-1 == fd)

    {

        printf("%s open error \n", __func__);

        return -1;

    }

    size = read(fd, buffer, fileSize);

    if(size != fileSize)

    {

        printf("%s read file len error \n", __func__);

        close(fd);

        return -1;

    }

    buffer[fileSize] = '\0';

    close(fd);

    p = buffer;

    while(i<fileSize)

  while(i<fileSize)

  {

        memset(tmpBuf, 0xff, sizeof(tmpBuf));

        j = i;

        while((i<fileSize) && (*p != '\0'))

        {

            tmpBuf[i] = *p;

            i++;

            p++;

            if((*p == ' ') || (*p == '\n'))

            {

                break;

            }

        }

        tmpBuf[i] = '\0';

        if(NULL != strstr(&tmpBuf[j], "media"))

        {

            memset(strBuf, 0xff, 100);

            sprintf(strBuf, "USB disk mount point : %s ", &tmpBuf[j]);

            printf("%s \n", strBuf);

        }

    }

    free(buffer);

    free(tmpBuf);

    return 0;

}

void main(void)

{

print_mount_point();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息