Поскольку ваша маска представляет собой файл, а @path
будет содержать имя файла,
вам придется перейти в папку с добавленным \..
@path\..
Так попробуйте:
forfiles /P C:\Sales /S /M file1* /D -7 /C "cmd.exe /c @cd /D @path\..&del file1 file3 file6 file8"
Эта команда также найдет файл1, соответствующий критериям, непосредственно в C:\Sales
Более универсальное решение с использованием PowerShell
Get-ChildItem "C:\Sales\Client*\file1" -File |
Where LastWriteTime -lt (Get-Date).Date.AddDays(-7)|
ForEach-Object {
PushD $_.Directory
Remove-Object file[1368]
PopD
}