Bagaimana cara menghapus file sementara setelah reboot pada Windows?

38

Ubuntu secara default menghapus file sementara setelah reboot, tetapi Windows tidak. Bagaimana cara membuat Windows melakukan hal yang sama?

mystdeim
sumber
IE temp file atau windows temp file? (% temp% folder)
Lorenzo Von Matterhorn
% TEMP% (c: \ users \ user \ appdata \ local \ temp)
mystdeim
4
Linux memiliki dua folder sementara: / tmp terhapus saat reboot, / var / tmp tidak. Di Windows, lebih sulit untuk memutuskan file mana yang dapat dihapus dengan aman. Saya telah melihat aplikasi yang bahkan menyimpan executable mereka di folder sementara (driver, IIRC, dan tidak, itu bukan malware). Menghapus hanya file sementara yang belum diakses selama X hari mungkin akan menjadi pendekatan yang lebih baik.
Dennis
1
Mengapa orang melakukannya di setiap startup? Itu buang-buang waktu. Rencanakan untuk melakukan pembersihan seperti itu seminggu sekali atau sebulan.
Robert Niestroj
Anda mungkin mengalami masalah menghapus file dengan ekstensi "etiqls" ("sqlite" mundur) karena mereka biasanya disimpan di folder itu dan dikunci. Mereka digunakan oleh anti-virus dan beberapa perangkat lunak lain, dan tidak masalah untuk dilewati.
Rod Boev

Jawaban:

46

Alih-alih melalui kesulitan (dan bahaya ) melakukan ini secara manual, saya akan merekomendasikan program seperti CCleaner yang dapat mengotomatisasi proses ini dan meninggalkan file-file yang dibuat dalam 24 jam terakhir.

Ini cukup penting, karena beberapa program yang mungkin juga berjalan saat startup sudah dapat menggunakan file sementara, yang berpotensi menyebabkan masalah. Di Linux, /tmpdirektori diketahui dihapus pada setiap reboot, dan karena itu semua program Linux dirancang berdasarkan prinsip itu.

Inilah cara membuat CCleaner mulai dengan Windows: Opsi CCleaner

Pastikan hanya "File Sementara" dan hal-hal lain yang benar-benar ingin Anda hapus pada setiap startup diperiksa: Temukan CCleaner

CCleaner seharusnya hanya menghapus file yang berumur lebih dari satu hari secara default, tetapi tidak ada salahnya untuk memeriksa pengaturan ini: CCleaner opsi lanjutan

Setelah semua ini selesai, CCleaner harus berjalan dengan tenang di area notifikasi di setiap startup. Ikon akan hilang saat pembersihan selesai. Ikon baki pembersih

oktosiTe
sumber
CCleaner terinfeksi sekali. Itulah salah satu alasan mengapa selalu lebih baik menggunakan fungsi builtin, daripada menginstal aplikasi pihak ke-3 untuk tugas sepele seperti itu.
davidbaumann
10

Saya tidak berpikir ada pilihan untuk itu. Anda dapat membuat .batfile untuk menghapus file sementara dan membuatnya berjalan saat startup (ketika Windows mulai). Berikut ini harus bekerja:

Hapus semua file dalam% temp% tetapi biarkan folder tidak tersentuh:

@echo off
del /s /f /q "%temp%/*.*"

Hapus semua yang ada di% temp%:

@echo off
rmdir /s /q %temp%
md %temp%

Hapus semua .tmpfile:

@echo off
del /s /f /q "%temp%/*.tmp"

Ketahuilah bahwa beberapa program menggunakan file %temp%untuk menjalankannya, jadi lakukan ini dengan risiko Anda sendiri.

Untuk .batmenjalankannya saat startup, ikuti tutorial ini dari Microsoft atau salah satu dari banyak lainnya yang online ...

Alex
sumber
8

Sebagai soal fakta, itu adalah buang-buang waktu prosesor untuk melakukan pembersihan seperti itu setiap startup.

Alih-alih, tambahkan tugas terjadwal, yang dipicu seminggu sekali untuk mengeksekusi batch yang terletak di direktori ccleaner yang sama , berisi:

ccleaner /AUTO

Ini akan melakukan pemindaian dan pembersihan otomatis tanpa diminta ke semua kotak yang dicentang pada ccleaner dan AKAN menyertakan direktori yang ditentukan pengguna. (tidak melakukan perbaikan registri)

tip tambahan: pada properti batch, Anda bahkan dapat memilihnya untuk menjalankan diminimalkan, sehingga kurang mengganggu Anda pada saat startup; pemindaian akan lebih cepat dan mungkin Anda bahkan tidak akan melihat jendela yang diperkecil.

Lorenzo Von Matterhorn
sumber
1
Apakah ada bukti bahwa ini adalah masalah faktual? oO
Smithers
1

File kumpulan saya untuk menghapus file sementara yang lebih lama dari satu hari

IF EXIST %TEMP% ( FORFILES /P %TEMP% /D -01 /C "cmd /c IF @isdir==TRUE (rd /s /q @path) else (del /q @path)" )
Arnaud Grandville
sumber
1
Tidak ada DOS untuk waktu yang lama
davidbaumann
0

cleanmgr

Anda dapat menggunakan fungsi bawaan Windows untuk membersihkan semua file sementara (dan banyak lagi).

Sekali saja, lari

CLEANMGR /sageset

Sekarang pilih apa pun yang ingin Anda bersihkan.

Sekarang dengan berlari

CLEANMGR /sagerun

itu persis akan menjalankan semua pekerjaan pembersihan seperti yang dipilih.

Lihat lebih banyak di Microsoft Knowledgebase .

davidbaumann
sumber