//判断是否插入U盘char* cmd1 = "ls /sys/class/scsi_device/";fp = popen( cmd1 , "r");fread(buf, 1, 7, fp);      printf("USB drive buf now. buf = %s  \n",buf);// 未查出U盘信息,判空if(buf != NULL){if(strlen(buf) == 0)printf("empty");}

1.用popen去使用liunx指令"ls /sys/class/scsi_device/",

该指令功能是查询是否插入u盘,插入则会有盘符:比如:"3:00:00"等字样。若没有插入则字符串为空。

2.如果是想查询出盘符的名字:"sda","sdb","sdc"等。。

        /判断是否插入U盘char* cmd1 = "ls /sys/class/scsi_device/";fp = popen( cmd1 , "r");fread(buf, 1, 7, fp);       printf("USB drive buf now. buf = %s  \n",buf);// 未查出U盘信息,判空if(buf != NULL){if(strlen(buf) == 0)printf("empty");}// 判断U盘 的 盘符 : liunx指令// ls /sys/class/scsi_device/char *name1 = (char *) malloc(strlen(cmd1) + strlen(buf));strcpy(name1, cmd1);strcat(name1, buf);printf("%s\n", name1);char* cmd2 = "/device/block";// 判断U盘 的 名字 : liunx指令// ls /sys/class/scsi_device/3:0:0:0/device/blockchar *name2 = (char *) malloc(strlen(name1) + strlen(cmd2));strcpy(name2, name1);strcat(name2, cmd2);printf("%s\n", name2);fp = popen(name2 , "r");char usbName[3];fread(usbName, 1, 3, fp);printf("the driver name = %s  \n",usbName);

3.如果是想用c语言去挂载u盘,则有个便捷方法,就是通过触发脚本,调用mountusb.sh脚本。

#!/bin/sh
modprobe usb-storage
mount -t vfat /dev/sd[a-z][0-9] /root/longer3d -o iocharset=utf8
sync

然后通过c去触发脚本,我的脚本是放在根目录下的test文件夹:即:"/root/test/mountusb.sh"

int check = system("~/test/mountusb.sh");

liunx下判断c语言是否挂载U盘相关推荐

  1. UEFI模式下WIN10+Ubuntu18.04LTS(挂载到固态加机械)双系统安装

    UEFI模式下WIN10+Ubuntu18.04LTS(挂载到固态加机械)双系统安装 前提:两个系统均未安装 1.配置单: CPU:锐龙R5 3600 显卡:铭瑄 2060super 8G iCraf ...

  2. 在VS下用C语言连接SQLServer2008

    在VS下用C语言连接SQLServer2008 原文:在VS下用C语言连接SQLServer2008 step1:启动SQLSERVER服务 step2:打建立数据库test,在test库中建立tes ...

  3. Linux下给挂载U盘或者SD卡

    Linux下给挂载U盘或者SD卡 mount -t vfat /dev/mmcblk0p2 /udisk 对于ARMLinux来说,第一次使用U盘时,U盘这个文件目录是不能直接进入的,我们需要对其进行 ...

  4. step1.day12 Linux下使用C语言编程基础总结

    一:系统准备 1.VMware软件安装,用来在现在操作系统下模拟Linux系统而不必重装系统 2.Linux系统安装,推荐使用Ubuntu14.02版本,较为稳定 注意:安装步骤,选择稍后安装虚拟机, ...

  5. c语言中怎么暂停一个一个游戏,求助:最近在linux下用c语言写了一个贪吃蛇程序,有几个问题,第一:贪吃蛇怎么实现暂停,第二:有时候同时输入上下左右中的两个键就会直接游戏结束...

    求助:最近在linux下用c语言写了一个贪吃蛇程序,有几个问题,第一:贪吃蛇怎么实现暂停,第二:有时候同时输入上下左右中的两个键就会直接游戏结束 /* 以下是主要的逻辑代码,还有些.c和.h就没发了 ...

  6. c语言sqlserver进行odbc编程,在VS下用C语言连接SQLServer2008

    原文: 在VS下用C语言连接SQLServer2008 step1:启动SQLSERVER服务 step2:打建立数据库test,在test库中建立test表(a varchar(200),b var ...

  7. 常子楠主编 c语言程序设计答案,4G下的C语言程序设计教学研究-教学研究论文-教育论文(8页)-原创力文档...

    4G下的C语言程序设计教学研究 摘要:普通高等院校本科非计算机专业学生学习C语言程序设计可以培养较好的锻炼逻辑分析能力和计算思维能力.本文分析了4G环境下C语言课程教学中存在的一些问题,结合移动互联网 ...

  8. Ubuntu 下使用go语言调用ffmpeg推流

    Ubuntu 下使用go语言调用ffmpeg推流Ubuntu 下使用go语言调用ffmpeg推流 win10 安装 Ubuntu Windows Subsystem for Linux(WSL)适用于 ...

  9. vc6.0c语言五子棋程序,哪位大虾可以给我个VC6.0下用C语言编的五子棋,要有流程图...

    五子棋 代码 VC6.0 qq_29018467112015-06-14 五子棋 (用C语言编写五子棋游戏) rannianzhixia170392017-04-20 基于easyx图形的五子棋游戏 ...

最新文章

  1. react测试组件_测试驱动的开发,功能和React组件
  2. 字典树(trie树)、后缀树
  3. [疑问]您没有调试该服务器的权限。验证您是服务器上Debuger Users组的成员。...
  4. Linux系统中软件的“四”种安装原理详解:源码包安装、RPM二进制安装、YUM在线安装、脚本安装包...
  5. 系统调用002 KiSystemService函数逆向分析
  6. android中文api(85)——HorizontalScrollView
  7. java 判断 框架类型_第10章-验证框架 --- 验证器类型
  8. python 大智慧股池_大智慧股票池设计
  9. 无线充电设计(一)-基本介绍
  10. Kubernetes查看日志命令
  11. 微信管理工具用什么比较好呀
  12. 机器学习(四):关于模型复杂度与模型性能的关系
  13. Docker——阿里云镜像加速
  14. 视频分割软件,将一个视频分割成多段小的视频
  15. 谈性能测试-FPS流畅度
  16. CTF-NEFU校赛-题解
  17. 短路与和短路或的区别
  18. 关于“提升产品质量”和“提升测试能力” (三)聚焦
  19. Vue——05-02组件的数据、为什么data要使用函数、父组件给子组件传递数据的三种写法、父传子以及传两种以上的值、默认值以及父传子的引用类型
  20. 服务器 信号超出范围,显示器上显示输入信号超出范围怎么处理

热门文章

  1. 资格考试_第四章_证券投资基金的监督
  2. 计算机网络安全漫画图片,安全教育漫画图片
  3. 2023年软考初级程序员
  4. python数据库-1
  5. 构建去中心化安全桥梁 Conflux 与 Chainlink 达成战略合作
  6. 苹果保修期多久_手机的寿命究竟有多久,您的换机周期是否会等到手机报废呢?|手机|电池|安卓手机...
  7. LU分解完成利用节点电压法的简易电路求解程序(二)
  8. Linux 查找项目路径
  9. Linux 中去除 vi/vim 和 git diff 中的 ^M 问题解决办法
  10. 亚像素(Pixel)