教给你一个愚蠢的办法
哈哈
charret[1024];
char*DoSysCmd(char*cmdline)
{
FILE*fp;
charline[32];
charcmdtmp[256];
memset(cmdtmp,0x00,sizeof(cmdtmp));echo_everyline("--");
sprintf(cmdtmp,"%s2>&1",cmdline);echo_everyline("--");
memset(ret,0x00,sizeof(ret));echo_everyline("--");
fp=popen(cmdtmp,"r");echo_everyline("--");
while(fgets(line,sizeof(line),fp))
{
sprintf(ret,"%s%s",ret,line);echo_everyline("--");
}
pclose(fp);echo_everyline("--");
returnret;
}
//把U盘上的数据导出到U盘
voidDataExporter(void)
{
char*result;
char*result_usb0;
char*result_umount;
char*result_mount;
char*result_check1;
char*result_check2;
char*result_check3;
if(1==GetDevCStatePlazaServerState())
{
show_Help("和服务器通讯正常,不允许导出数据......\n按【取消】键取消。");echo_everyline("--");
return;
}
show_Info("检查是否存在可移动存储设备......");echo_everyline("--");
result=DoSysCmd("cat/proc/scsi/scsi");echo_everyline("--");
if(0==strcmp(result,"Attacheddevices:none\n"))
{
show_Info("对不起,没有发现任何设备!");echo_everyline("--");
return;
}
result_usb0=DoSysCmd("cat/proc/scsi/usb-storage-0/0");echo_everyline("--");
if(NULL==strstr(result_usb0,"Attached:Yes"))
{
show_Info("对不起,设备未连接!");echo_everyline("--");
return;
}
show_Info("存在可移动存储设备,正在尝试挂载......");echo_everyline("--");
result_umount=DoSysCmd("umount"FILENAME_USBDIR);echo_everyline("--");
result_mount=DoSysCmd("mount-tvfat/dev/scsi/host0/bus0/target0/lun0/part1"FILENAME_USBDIR);echo_everyline("--");
if(NULL!=strstr(result_mount,"failed:"))
{
result_check1=DoSysCmd("mount");echo_everyline("--");
if(NULL!=strstr(result_check1,"/dev/scsi/host0/bus0/target0/lun0/part1on"FILENAME_USBDIR))
{
show_Info("对不起,未能挂载可移动存储设备!");echo_everyline("--");
return;
}
}
show_Info("成功挂载可移动存储设备,正在准备复制文件.....");echo_everyline("--");
result_check2=DoSysCmd("ls"FILENAME_USBDIR""FILENAME_ARCATUSB);echo_everyline("--");
if(NULL!=strstr(result_check2,"Nosuchfileordirectory"))
{
if(NULL!=strstr(DoSysCmd("mkdir"FILENAME_USBDIR""FILENAME_ARCATUSB),"mkdir:"))
{
show_Info("对不起,创建目录时遇到问题!");echo_everyline("--");
return;
}
}
result_check3=DoSysCmd("ls"FILENAME_USBDIR""FILENAME_ARCATUSB);echo_everyline("--");
if(strlen(result_check3)>1)
{
if(NULL!=strstr(result_check3,"Nosuchfileordirectory"))
{
show_Info("对不起,目录创建失败!");echo_everyline("--");
return;
}
else
{
show_Info("对不起,您可移动设备的目录【"FILENAME_ARCATUSB"】非空!");echo_everyline("--");
return;
}
}
show_Info("正在复制文件.....");echo_everyline("--");
if(NULL!=strstr(DoSysCmd("cp"FILENAME_SEND_MSG_BACKUP_FILE_Archive"*"FILENAME_USBDIR""FILENAME_ARCATUSB),"cp:"))
{
show_Info("对不起,复制文件时遇到问题!");echo_everyline("--");
return;
}
show_Info("正在清理文件.....");echo_everyline("--");
if(NULL!=strstr(DoSysCmd("rm"FILENAME_SEND_MSG_BACKUP_FILE_Archive"*"),"rm:"))
{
show_Info("对不起,移除文件时遇到问题!");echo_everyline("--");
return;
}
show_Info("文件复制完成!请拔出您的可移动存储设备!按【取消】键退出!");echo_everyline("--");
}
|