PDA

Показать полную графическую версию : Обойти все папки и заархивировать файлы 1Cv8.1CD


PATRI0T
12-01-2023, 02:44
Добрый день. Помогите плз со скриптом.
Есть каталог D:\1CBases с базами 1с, каждая находится в своей папке с именем базы.
Их кроме некоторых (небольшой список, задается строкой) нужно бэкапить.
В каждом каталоге есть файл 1Cv8.1CD, который нужно заархивировать 7z в архив с именем этой папки и положить в каталог D:\1СBackups

Спасибо

Serguei Kouzmine
12-01-2023, 05:34
чтоб получить совет покажите как сами пробовали решить ? ответ "я просто стремлюсь к знаниям" неверный

DJ Mogarych
12-01-2023, 11:39
Powershell

$archiver = "C:\Program Files\7-Zip\7z.exe"
$basesFolder = "D:\temp\1CBases"
$backupFolder = "D:\temp\1CBackups"
$exceptions = gc "D:\temp\1CBases\exceptions.txt"

dir $basesFolder |? {$_.psiscontainer -and $_.name -notin $exceptions} |% {
& $archiver a "$backupFolder\$($_.name).7z" "$($_.FullName)\1Cv8.1CD"
}


Папки $basesFolder

1rrr
2ghdgo
3egrwkekj
4emkd
5lkwd
6wojher


Содержимое exceptions.txt

2ghdgo
5lkwd


Результат в $backupFolder (в каждом архиве соответствующий 1Cv8.1CD)

1rrr.7z
3egrwkekj.7z
4emkd.7z
6wojher.7z




© OSzone.net 2001-2012