Имя: Пароль:
IT
 
Удаление старых файлов с локального ресурса
,
0 val245
 
26.08.19
13:49
Здравтсвуйте

Небольшой опыт работы с bat файлами. Нужно создать задание для удаления старых файлов (скажем, старше 5 дней)
Пишу в батнике
FORFILES /p \\1CSRV\1C_Backup /s /d -3 /c "CMD /c del /Q @FILE"
Однако с ресурса \\1CSRV\1C_Backup файл не удаляется. Хотя если пропишу папку на локальном диске, то удаляется без проблем. Между тем, при копировании фалов на локальный ресурс задание выполняется без проблем.
Кто может помочь, может где-то еще что-то нужно указать?
1 val245
 
26.08.19
13:55
up
2 val245
 
26.08.19
14:22
вверх
3 Йохохо
 
26.08.19
14:23
/y -y как там у вас в досе
4 val245
 
26.08.19
14:31
(3) добавить нужно /y? куда?
5 PuhUfa
 
26.08.19
14:31
А еще права на шару у того прод кем выполняется задание
6 val245
 
26.08.19
14:37
у текущего локального пользователя права есть
7 Йохохо
 
26.08.19
14:38
8 StanLee
 
26.08.19
14:40
https://yandex.ru/search/?text=forfiles%20unc%20path&&lr=10765
и вобще много ответов и не только по-русски
9 GGDots
 
26.08.19
14:53
(0) На powershell так делал - по сетке удаляет все отлично:

https://craft1c.ru/powershell-udalenie-fajjlov/

Скрипт:

$TargetFolder = "C:\TestFiles\" # Путь к папке логов.
$Period = "-8" # Количество хранимых дней.


# Вычисляем дату после которой будем удалять файлы.
$CurrentDay = Get-Date
$ChDaysDel = $CurrentDay.AddDays($Period)

#? Where-Object {$_.PSisContainer}  - проверка на каталог
#? Where-Object {!$_.PSisContainer} - проверка на файл
$ChDaysDel
foreach ($file in Get-ChildItem -Path $TargetFolder | Where-Object {$_.PSisContainer} |Sort-Object )
{

    If($file.BaseName.Contains('Выгрузка на дату')) #подстрока в имени каталоге
    {
      
        If(!($file.LastWriteTime -gt $ChDaysDel)) #файлы старше $ChDaysDel
        #If($file.LastWriteTime -gt $ChDaysDel)   #файлы младше $ChDaysDel
        {
            $file.BaseName
            $file.LastWriteTime

            $DelPath = $TargetFolder + $file;

            #Remove-Item $DelPath -Recurse -whatif # для теста добавить -whatif
            Remove-Item $DelPath -Recurse
        }

    }

}
10 val245
 
26.08.19
15:43
Спасибо. Получилось