You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ubl-settings-diskquota/source/my_device.cc

36 lines
1.1 KiB

#include "my_device.h"
namespace Devices {
std::vector<Get_device::Mount> Get_device::get_all_device() {
std::vector<Mount> vec_mount_devices;
std::vector<string> vec_str;
std::ifstream file("/proc/mounts");
if (file.is_open()) {
std::string line;
while (std::getline(file, line)) {
vec_str = Utils::split(line, ' ');
struct Mount mount;
mount.device = vec_str[0];
mount.destination = vec_str[1];
mount.fstype = vec_str[2];
mount.options = vec_str[3];
mount.dump = vec_str[4];
mount.pass = vec_str[5];
vec_mount_devices.push_back(mount);
}
}
file.close();
return vec_mount_devices;
}
std::vector<Get_device::Mount> Get_device::get_part_devices(string find_device_name) {
std::vector<Mount> vec_mount_devices;
for (const auto device: this->get_all_device) {
if (device.device.find(find_device_name) != std::string::npos) {
vec_mount_devices.push_back(device);
}
}
return vec_mount_devices;
}
}