Проблемы с 1С, особенно после обновлений, часто решаются простым удалением кеша. Но если у вас терминальный сервер с множеством пользователей, ручное удаление кеша каждого – не самая приятная задача.
К счастью, в PowerShell есть решение! С помощью небольшого скрипта можно очистить кеш всех пользователей одной командой.
Что делает скрипт:
- Удаляет кеш для баз 1С версий 8.2 и 8.3, расположенный в папках:
C:\Users\*\AppData\Local\1C\1Cv82\*
C:\Users\*\AppData\Roaming\1C\1Cv82\*
C:\Users\*\AppData\Local\1C\1Cv8\*
C:\Users\*\AppData\Roaming\1C\1Cv8\*
- Игнорирует кеш для баз, которые в данный момент открыты.
Как использовать:
- Скопируйте приведенный ниже код в текстовый файл и сохраните его с расширением .ps1.
- Запустите скрипт от имени администратора.
- Рекомендуется запускать скрипт, когда 1С не запущена, чтобы обеспечить полную очистку кеша.
Текст скрипта:
Get-ChildItem "C:\Users*\AppData\Local\1C\1Cv82*","C:\Users*\AppData\Roaming\1C\1Cv82*" | Where {$_.Name -as [guid]} |Remove-Item -Force -Recurse
Get-ChildItem "C:\Users*\AppData\Local\1C\1Cv8*","C:\Users*\AppData\Roaming\1C\1Cv8*" | Where {$_.Name -as [guid]} |Remove-Item -Force -Recurse