Я пытаюсь создать набор инструкций в Powershell о том, как:
Извлекать файлы из нескольких не связанных папок и считать их, за исключением определенных файлов и / или подпапок.реализовано
Дайте мне последний измененный файл (самый последний)
Удалите дубликаты файлов на основе имени, даты и времени, а также размера файла ине просто имя (одно и то же имя, но разные файлы могут находиться в нескольких папках), поскольку файл может быть повторен в параметрах резервной копии как подстановочный символ / папки избыточного файла, что будет означать, что один и тот же файл по одному и тому же пути может учитываться дважды или болееи затем испортите мой счетчик файлов.
То, что я сделал до сих пор (пример пути к профилю браузера, после его ввода):
(«стрелки» указывают на различные параметры)
File File folder many JSON inside folder Folder
| | | | |
v v v v v
GCI bookmarks, 'Current Session', databases\*, extensions\manifest.json, 'Local Storage\*' -Recurse | ? { $_.FullName -inotmatch 'Local Storage\\http* | Databases\\http*'} | Get-Unique | measure-object -line
^ ^
| |
EXCLUSIONS: HTTP* files inside folder HTTP* subfolders inside folder
Это уже отфильтровывает все файлы, которые я хочу, от тех, которые мне не нужны, посчитайте их и удалите дубликаты, НО:также удаляет множество файлов Json с одинаковыми именами в разных папках, не принимая во внимание размер файла (хотя я думаю, что он по-прежнему различает даты)
Подводя итог, я хочу, чтобы была возможность командной строки RAR и 7Zip, знать точно что включать в архив: мы даем ввод файлов и папок, мы можем по ошибке включить подпапку, уже покрытую предыдущим подстановочным знаком, мы программируем исключения ( -x! в случае 7zip), и программа знает точно , какие файлы включать и исключать, и без сжатия одного и того же файла дважды
Это так, я могу знатьесли новая резервная копия необходима или нет, относительно предыдущей (другое количество файлов или последний измененный файл).Я знаю о функции «обновления» на rar и 7zip, но это не то, что я хочу.Говоря о самом последнем написанном файле, есть ли какой-то способ «параллельного трубопровода»?Рекурсивный поиск файлов, который может выводить результаты по 2 командам по цепочке, вместо выполнения (длительного) сканирования на предмет количества файлов и повторения сканирования, чтобы найти самый последний файл?
Что я имею в виду:
**THIS: **Instead of THIS:
_______ >FILE COUNT
|
SCAN --+ SCAN -->FILE COUNT ; SCAN -->MOST RECENT FILE
|_______ >MOST RECENT FILE
Я сделал почти всю работу, но я ударил стену.Все, что мне не хватает, - это удаление избыточных файлов (например, один и тот же точный файл по одному и тому же пути подсчитывается дважды или более из-за введенных избыточных параметров, хотя я хочу, чтобы одинаковые файлы имен в разных папках продолжали учитываться);и в то же время я не против получить последний измененный файл, поэтому мне не нужно повторять то же самое сканирование снова (powershell иногда может быть очень медленным).Этот последний пункт менее важен, но было бы неплохо, если бы он сработал.
Буду очень признателен за любую помощь, которую вы можете дать мне по этому вопросу.Спасибо за чтение: -)