void C_GwSettingWidget::GetHardDiskNameList(QStringList&slDiskNameList)
{
slDiskNameList.clear();
char cdisk = 'a';
char cNum ='A';
int iCount=0;
QString sDisk = "";
QString sCommand = "sudo fdisk -l |grep Disk";//"sudo lshw -C disk";"sudo fdisk -l |grep Disk"
QString sTempList;
QStringList ts;
QString sSizeNumber;
int iposition=-1;
PUBFUN::RunSysCommand(sCommand,sTempList);
PUBFUN::SpilitStr(sTempList,"\n",ts);
if(ts.isEmpty())
qDebug()<<"no message return";
else
qDebug()<<ts.value(0);
for (int i = 0; i < 26; i++)
{
sDisk = "sd" + QString(cdisk + i);
QString removablePath="/sys/block/" + sDisk+ "/removable";
if(QFile::exists(removablePath))
{
iCount++;
for (int iNum=0;iNum<ts.count();iNum++)
{
iposition=ts.value(iNum).indexOf(QString("Disk /dev/%1:").arg(sDisk));
if(iposition>=0)
{
int iStartPosition =ts.value(iNum).indexOf(':')+1;
int iEndPosition =ts.value(iNum).indexOf(',');
sSizeNumber=ts.value(iNum).mid(iStartPosition,iEndPosition-iStartPosition);
qDebug()<<"size :"<<sSizeNumber;
break;
}
}
QString sTempName =QString("DISK%1[%2]")
.arg(QString(cNum+i))
.arg(sSizeNumber);
slDiskNameList.append(sTempName);
}
}
// slDiskNameList.clear();//可以查看磁盘序列号
// char cdisk = 'a';
// char cNum ='A';
// int iCount=0;
// QString sDisk = "";
// QString sCommand = "sudo lshw -C disk";
// QString sTempList;
// QStringList ts;
// QString sSerialNumber;
// QString sSizeNumber;
// int iposition=-1;
// PUBFUN::RunSysCommand(sCommand,sTempList);
// PUBFUN::SpilitStr(sTempList,"\n",ts);
// if(ts.isEmpty())
// qDebug()<<"no message return";
// else
// qDebug()<<ts.value(0);
// int iNum=0;
// for (int i = 0; i < 26; i++)
// {
// sDisk = "sd" + QString(cdisk + i);
// QString removablePath="/sys/block/" + sDisk+ "/removable";
// if(QFile::exists(removablePath))
// {
// iCount++;
// for (;iNum<ts.count();iNum++)
// {
// iposition=ts.value(iNum).indexOf("product:");
// if(iposition>=0)
// {
// int iLength = ts.value(iNum).length();
// sSerialNumber=ts.value(iNum).right(iLength-iposition-8);//截取数据部分,位置从0开始计数 "serial:"长度为7
// }
// iposition=ts.value(iNum).indexOf("size:");
// if(iposition>=0)
// {
// int iLength = ts.value(iNum).length();
// sSizeNumber=ts.value(iNum).right(iLength-iposition-5);
// qDebug()<<"size :"<<sSizeNumber;
// break;
// }
// }
// QString sTempName =QString("DISK%1[%2](%3)")
// .arg(QString(cNum+i))
// .arg(sSizeNumber)
// .arg(sSerialNumber);
// slDiskNameList.append(sTempName);
// }
// }
}