Как я могу получить путь ко всем файлам с указанным расширением c - PullRequest
0 голосов
/ 26 февраля 2020

Я пытался вести себя как вопрос, используя функцию filepath.Wark.

var paths []string
err := os.Chdir("C:\\")
if err != nil {
    return err
}
err = filepath.Walk(".", func(path string, info os.FileInfo, err error) error {
    if err != nil {
        return err
    }
    if !info.IsDir() {
        matched, err := filepath.Match(extension /*"*.reg"*/, info.Name())
        if err != nil {
            return err
        }
        if matched {
            paths = append(paths, path)
        }
    }
    return nil
})
if err != nil {
    return err
}

41 reg файлы были найдены таким образом, но с помощью программы everything было найдено 103 reg файла.

Я хочу получить 103 результата. Прежде всего, я проверил, что reg-файл существует не только в Program Files, но и в папке Users, но не найден в go.

Я запустил разрешение администратора.

1 Ответ

0 голосов
/ 26 февраля 2020

Я бы предложил использовать filepath.Ext , чтобы найти расширение файла, прописные буквы и проверить равенство с .reg. Это был бы лучший способ только для расширений.

Другая причина может заключаться в том, что у вас могут не быть разрешения на просмотр каталога других пользователей в каталоге Users. Попробуйте запустить программу от имени администратора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...