Added RecitRecentCleaner
This commit is contained in:
93
NOT WORKING!! RevitRecentNetworkFileCleaner.bat
Normal file
93
NOT WORKING!! RevitRecentNetworkFileCleaner.bat
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
REM THIS FILE IS NOT WORKING!!!!
|
||||||
|
REM Revit.ini is encoded as UTF-16 however windows cmd is UTF-8 only, so this script should be rewritten in powershell or ither language.
|
||||||
|
REM I leave it here for historical reasons
|
||||||
|
@echo off
|
||||||
|
REM Version: 1.0
|
||||||
|
REM Removes network files from recent files from Revit.ini
|
||||||
|
REM You can set up wich drives to clean from the ini and the folder for local files. It creates a backup before modifying the ini.
|
||||||
|
REM This script solves a bug in Revit 2019 onward, where File menu freezes for minutes if there is an inaccessible file in the recent file list
|
||||||
|
REM Created by Peter Gyetvai: gyetpet@gmail.com with the help of the internet
|
||||||
|
|
||||||
|
REM --------
|
||||||
|
REM Settings
|
||||||
|
REM --------
|
||||||
|
|
||||||
|
REM Revit versions to clean:
|
||||||
|
REM Separate elements in these list with spaces:
|
||||||
|
SET REVITVERSIONS=2019 2020
|
||||||
|
|
||||||
|
REM External drive letters, path from this drives will be cleaned:
|
||||||
|
REM Separate elements in these list with spaces:
|
||||||
|
SET EXTERNALPATH=P Q
|
||||||
|
|
||||||
|
REM Clear local files from path: [true/false]
|
||||||
|
REM From Revit 2019.2 local files of unaccessible servers also freeze the start screen and file menu. If this is set to true, local files will be cleaned as well.
|
||||||
|
SET CLEARLOCALFILES=true
|
||||||
|
|
||||||
|
|
||||||
|
REM -----------------------
|
||||||
|
REM Beginning of the script
|
||||||
|
REM -----------------------
|
||||||
|
|
||||||
|
chcp 1200
|
||||||
|
setlocal enabledelayedexpansion
|
||||||
|
|
||||||
|
(for %%a in (%REVITVERSIONS%) do (
|
||||||
|
call :inicheck %%a
|
||||||
|
))
|
||||||
|
|
||||||
|
echo Removed problematic lines from Revit.ini
|
||||||
|
|
||||||
|
GOTO :eof
|
||||||
|
|
||||||
|
:inicheck
|
||||||
|
set currver=%1
|
||||||
|
set folder=%appdata%\Autodesk\Revit\Autodesk Revit %currver%
|
||||||
|
set theini=%folder%\Revit.ini
|
||||||
|
set thebackup=%theini%.bckp
|
||||||
|
set tempini=%theini%-temp
|
||||||
|
|
||||||
|
IF EXIST "%theini%" (
|
||||||
|
echo Creating backup: %thebackup%
|
||||||
|
copy /y "%theini%" "%thebackup%"
|
||||||
|
|
||||||
|
if %CLEARLOCALFILES% equ true (
|
||||||
|
call :findprojectpath
|
||||||
|
call :findpathlines
|
||||||
|
) else (
|
||||||
|
call :findpathlines
|
||||||
|
)
|
||||||
|
)
|
||||||
|
EXIT /B
|
||||||
|
|
||||||
|
:findprojectpath
|
||||||
|
FOR /F "tokens=1,2 delims==" %%G IN ('type "!theini!"') DO (
|
||||||
|
if %%G equ ProjectPath (
|
||||||
|
echo Found project path: %%H
|
||||||
|
set path=%%H
|
||||||
|
set ppath=!path:\=\\!
|
||||||
|
echo !ppath!
|
||||||
|
call :dellineandmove File.=!ppath!
|
||||||
|
|
||||||
|
)
|
||||||
|
)
|
||||||
|
EXIT /B
|
||||||
|
|
||||||
|
:findpathlines
|
||||||
|
(for %%b in (%EXTERNALPATH%) do (
|
||||||
|
echo Finding lines for drive: %%b:\
|
||||||
|
set currdrive=%%b:\\
|
||||||
|
call :dellineandmove !currdrive!
|
||||||
|
))
|
||||||
|
EXIT /B
|
||||||
|
|
||||||
|
:dellineandmove
|
||||||
|
echo Deleting line(s) from file with regex: %*
|
||||||
|
type "!theini!" | findstr /v /r %* > "!tempini!"
|
||||||
|
echo Moving temp file
|
||||||
|
move /y "!tempini!" "!theini!"
|
||||||
|
EXIT /B
|
||||||
|
|
||||||
|
REM -----------------------
|
||||||
|
REM End of the script
|
||||||
|
REM -----------------------
|
||||||
Reference in New Issue
Block a user