mirror of
https://github.com/SpotX-Official/SpotX.git
synced 2026-06-19 22:00:04 +10:00
Cache cleanup optimization
- Fixed slow client startup if cache purge was set - Now there is a log file (Spotify/cache/log.txt) in which you can find information about the script to clear the cache. - A little code optimization
This commit is contained in:
+41
-11
@@ -1,13 +1,43 @@
|
||||
# Запускаем Spotify.exe и ждем завершения процесса
|
||||
Start-Process -FilePath $env:APPDATA\Spotify\Spotify.exe; wait-process -name Spotify
|
||||
<#
|
||||
Имя: Очистка кеша Spotify.
|
||||
|
||||
# Этот блок удаляет файлы кэша по времени последнего доступа к нему, тоесть файлы которые не были изменены и не открывались больше указанного вами количества дней, будут удалены. Если нужно заменить на другое значение подставьте своё значение в 6 строку и 118 столбец (По умолчанию равно 7 дней).
|
||||
If (Test-Path -Path $env:LOCALAPPDATA\Spotify\Data) {
|
||||
Get-ChildItem $env:LOCALAPPDATA\Spotify\Data -File -Recurse | Where-Object lastaccesstime -lt (get-date).AddDays(-7) | Remove-Item
|
||||
Описание: Скрипт очищает устаревший кеш от прослушанной музыки в Spotify.
|
||||
Срабатывает каждый раз когда вы полностью закрываете клиент (Если клиент был свернут в трей то скрипт не сработает).
|
||||
|
||||
Для папки APPDATA\Spotify\Data действует правило, все файлы кеша которые не использовадись
|
||||
клиентом больше указанного количества дней будут удалены.
|
||||
|
||||
#>
|
||||
|
||||
$day = 7 # Количество дней после которых кеш считается устаревшим
|
||||
|
||||
# Очищаем папку \Data если найдет устаревший кеш
|
||||
|
||||
try {
|
||||
If (!(Test-Path -Path $env:LOCALAPPDATA\Spotify\Data)) {
|
||||
"$(Get-Date -uformat ‘%D %T’) Папка Local\Spotify\Data не найдена" | Out-File log.txt -append
|
||||
exit
|
||||
}
|
||||
$check = Get-ChildItem $env:LOCALAPPDATA\Spotify\Data -File -Recurse | Where-Object lastaccesstime -lt (get-date).AddDays(-$day)
|
||||
if ($check.Length -ge 1) {
|
||||
|
||||
$count = $check
|
||||
$sum = $count | Measure-Object -Property Length -sum
|
||||
if ($sum.Sum -ge 104434441824) {
|
||||
$gb = "{0:N2} Gb" -f (($check | Measure-Object Length -s).sum / 1Gb)
|
||||
"$(Get-Date -uformat ‘%D %T’) Удалено $gb устаревшего кеша" | Out-File log.txt -append
|
||||
}
|
||||
else {
|
||||
$mb = "{0:N2} Mb" -f (($check | Measure-Object Length -s).sum / 1Mb)
|
||||
"$(Get-Date -uformat ‘%D %T’) Удалено $mb устаревшего кеша" | Out-File log.txt -append
|
||||
}
|
||||
Get-ChildItem $env:LOCALAPPDATA\Spotify\Data -File -Recurse | Where-Object lastaccesstime -lt (get-date).AddDays(-$day) | Remove-Item
|
||||
}
|
||||
if ($check.Length -lt 1) {
|
||||
"$(Get-Date -uformat ‘%D %T’) Устаревшего кеша не найдено" | Out-File log.txt -append
|
||||
}
|
||||
}
|
||||
|
||||
# Удаляем файл mercury.db если его размер привышает 100 MB.
|
||||
If (Test-Path -Path $env:LOCALAPPDATA\Spotify\mercury.db) {
|
||||
$file_mercury = Get-Item "$env:LOCALAPPDATA\Spotify\mercury.db"
|
||||
if ($file_mercury.length -gt 100MB) { Get-ChildItem $env:LOCALAPPDATA\Spotify\mercury.db -File -Recurse | Remove-Item }
|
||||
}
|
||||
catch {
|
||||
"$(Get-Date -uformat ‘%D %T’) $error[0].Exception" | Out-File log.txt -append
|
||||
}
|
||||
exit
|
||||
Reference in New Issue
Block a user