Czyszczenie
Autor:
Paweł Wujczyk
Opublikowano:
9 marca 2006
Odsłon:
24 462
Podczas użytkowania systemu w naszym komputerze zapamiętywane są pliki
tymczasowe, pliki pozostawiane przez strony internetowe, pliki tworzące historię
otwieranych dokumentów. Pliki te ułatwiają nam pracę z Windows'em XP jednak z
czasem ilość miejsca zajmowanego przez te pliki staje się znacząca i usuwamy je.
Program zaprezentowany poniżej automatyzuje to działanie. Mianowicie usuwa on
pliki z folderów:
- "%userprofile%\cookies"
- "%userprofile%\Recent"
- "%userprofile%\Ustawienia lokalne\Temp"
- "%userprofile%\Ustawienia lokalne\Temporary Internet Files"
- "%userprofile%\Ustawienia lokalne\Historia"
Posiada on dwa przełączniki /a oraz /h. Pierwszy kasuje
wszystkie lokalizacje bez pytania o każdą kolejną użytkownika. Drugi natomiast
wyświetla pomoc. W czasie działania programu wyświetlają się trzy błędy
spowodowane tym, że próbujemy usunąć pliki aktualnie używane przez system.
Jednak ostrzeżenia te nie mają wpływu na funkcjonalność programu. Z folderu
cookies i recent usuwamy wszystkie pliki za pomocą plecenia del.
Natomiast folder Temp kasujemy ponieważ w nim znajdują się podfoldery i
polecenie del nie usunęło by ich. Po skasowaniu katalogu Temp
tworzymy go ponownie. Folderów Temporary Internet Files oraz Historia
nie musimy tworzyć ponieważ przy usuwaniu wystąpi błąd i nie uda nam się usunąć
samego folderu jednak cała jego zawartość ulegnie zniszczeniu.
@echo off
if "%1"=="/a" goto kasujwszystko
if "%1"=="/h" goto help
del "%userprofile%\cookies\*.*"
del "%userprofile%\Recent\*.*"
rmdir "%userprofile%\Ustawienia lokalne\Temp" /s
mkdir "%userprofile%\Ustawienia lokalne\Temp"
rmdir "%userprofile%\Ustawienia lokalne\Temporary Internet Files" /s
rmdir "%userprofile%\Ustawienia lokalne\Historia" /s
:kasujwszystko
del "%userprofile%\cookies\*.*" /q
del "%userprofile%\Recent\*.*" /q
rmdir "%userprofile%\Ustawienia lokalne\Temp" /s /q
mkdir "%userprofile%\Ustawienia lokalne\Temp"
rmdir "%userprofile%\Ustawienia lokalne\Temporary Internet Files" /s /q
rmdir "%userprofile%\Ustawienia lokalne\Historia" /s /q
goto end
:help
echo Program usuwa pliki z nastepujacych folderow
echo "%userprofile%\cookies"
echo "%userprofile%\Recent"
echo "%userprofile%\Ustawienia lokalne\Temp"
echo "%userprofile%\Ustawienia lokalne\Temporary Internet Files"
echo "%userprofile%\Ustawienia lokalne\Historia"
echo .
echo Dostepne przelaczniki
echo /a kasuje wszystkie pliki bez pytania użytkownika
echo /h wyswietla pomoc
:endProgram, który tu został zamieszczony
wykorzystuje polecenia i zmienne opisane w tabeli dotyczącej programów
wsadowych. Proponujemy przed lekturą tego programu zapoznać się z ww. tabelą. Na
pewno po przeczytaniu zamieszczonych tam przykładów kod programu będzie bardziej
zrozumiały.
Komentarze
Nie rozumiem o co tu chodzi. Na początku jest "echo off", a poźniej nigdzie nie ma "echo on". To, jak to wszystko ma się wyświetlić?
misiu,
13 czerwca 2006, 15:13
Echo off wyłącza tylko wpisywanie komend nie wyłacza natomiast efektow które się pojawią w wyniku wykonania tych komend. Zajrzyj
tutaj...
Paweł Wujczyk,
14 czerwca 2006, 01:17
Bardzo przyjemnie chodzi ten bat. Thnx
Chazz,
27 sierpnia 2006, 12:54
Bez urazy, ale ten batch jest bez sensu parametr "/a" nie ma wogule zastosowania na domiar złego jeśli go nie podamy to wykonamy operację czyszczenia dwukrotnie brak to instrukcji "goto end" przed etykietą ":kasujwszystko" a gdyby nawet taka była to i tak jest nieco źle napisane bo parametr "/q" dla programu del można umieścić w zmiennej i dla parametru "/a" można umieścić parametr "/q" w zmiennej, a w przypadku nie podania parametru("/a") wyzerować zmienną.
Dzięki tej małej "sztuczki" nie trzeba piszać operacji czyszczenia dwukrotnie plik bat/cmd zajmie miej na dysku ;)
sami25,
28 sierpnia 2007, 22:34
tu macie batcha po modyfikacji:
@echo off
if "%1"=="/a" set var="/q"
if "%1"=="/h" goto help
del "%userprofile%\cookies\*.*" %var%
del "%userprofile%\Recent\*.*" %var%
rmdir "%userprofile%\Ustawienia lokalne\Temp" /s %var%
mkdir "%userprofile%\Ustawienia lokalne\Temp"
rmdir "%userprofile%\Ustawienia lokalne\Temporary Internet Files" /s %var%
rmdir "%userprofile%\Ustawienia lokalne\Historia" /s %var%
goto end
:help
echo Program usuwa pliki z nastepujacych folderow
echo "%userprofile%\cookies"
echo "%userprofile%\Recent"
echo "%userprofile%\Ustawienia lokalne\Temp"
echo "%userprofile%\Ustawienia lokalne\Temporary Internet Files"
echo "%userprofile%\Ustawienia lokalne\Historia"
echo .
echo Dostepne przelaczniki
echo /a kasuje wszystkie pliki bez pytania użytkownika
echo /h wyswietla pomoc
:end
prawda że prościej się to czyta
sami25,
28 sierpnia 2007, 22:52
A co jesli mam spolszczony Win XP MCE "05?
PatryczekKrakow,
24 czerwca 2008, 21:26