|
@@ -140,19 +140,29 @@ func GetDiskUsed(filesystem string) (uint64, error) {
|
|
|
|
|
|
// GetDirectoryDiskUsed 获取目录列表的总大小
|
|
// GetDirectoryDiskUsed 获取目录列表的总大小
|
|
func GetDirectoryDiskUsed(directories []string) (uint64, error) {
|
|
func GetDirectoryDiskUsed(directories []string) (uint64, error) {
|
|
- cmd := exec.Command("du", "-s", directories[0])
|
|
|
|
|
|
+ cmd := exec.Command("du", "-s")
|
|
|
|
+ cmd.Args = append(cmd.Args, directories...)
|
|
output, err := cmd.CombinedOutput()
|
|
output, err := cmd.CombinedOutput()
|
|
if err != nil {
|
|
if err != nil {
|
|
|
|
+ fmt.Println(err)
|
|
return 0, err
|
|
return 0, err
|
|
}
|
|
}
|
|
lines := strings.Split(string(output), "\n")
|
|
lines := strings.Split(string(output), "\n")
|
|
- fields := strings.Fields(lines[0])
|
|
|
|
- parseUint, err := strconv.ParseUint(fields[0], 10, 64)
|
|
|
|
- fmt.Println("parseUint", parseUint)
|
|
|
|
- if err != nil {
|
|
|
|
- return 0, err
|
|
|
|
|
|
+ sum := uint64(0)
|
|
|
|
+ for _, line := range lines {
|
|
|
|
+ if len(line) > 0 {
|
|
|
|
+ fmt.Println(line)
|
|
|
|
+ fields := strings.Fields(line)
|
|
|
|
+ parseUint, err := strconv.ParseUint(fields[0], 10, 64)
|
|
|
|
+ fmt.Println("parseUint", parseUint)
|
|
|
|
+ if err != nil {
|
|
|
|
+ fmt.Println(err)
|
|
|
|
+ return 0, err
|
|
|
|
+ }
|
|
|
|
+ sum += parseUint
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- return parseUint, nil
|
|
|
|
|
|
+ return sum, nil
|
|
}
|
|
}
|
|
|
|
|
|
// GetDiskUsagePercent 获取磁盘使用率
|
|
// GetDiskUsagePercent 获取磁盘使用率
|