2014-11-14 110 views
1

我可以使用以下命令在Ruby中刪除IE7的Cookie,歷史記錄,緩存等。如何在刪除前後檢查臨時Internet文件夾是否爲空?

要清除:

  • Internet臨時文件:

    system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8') 
    
  • 瀏覽餅乾:

    system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2') 
    
  • 瀏覽歷史記錄:

    system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1') 
    
  • 表單數據:

    system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 16') 
    
  • 用於填充Web登錄形式記住的口令:

    system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 32') 
    
  • 或刪除所有的瀏覽歷史記錄(以上所有):

    system('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255') 
    

刪除前後可以獲取文件數量嗎? 另外,如何檢查臨時Internet文件夾在刪除前後是否爲空?

回答

1

首先您需要知道各種文件夾的位置。針對Windows 7

示例:

爲Windows 8
C:\Users\username\AppData\Local\Microsoft\Windows\Temporary Internet Files 

實施例:

C:\Users\username\AppData\Local\Microsoft\Windows\INetCache 

可以有一個以上的文件夾的臨時文件,有時用戶可以改變的位置文件夾,因此您需要閱讀Windows文檔以瞭解如何獲取所有文件夾及其位置的完整列表。

另外,IE7很舊。如果您的Windows版本也很舊,您可能想知道Windows使用32位與64位目錄命名時存在問題。這個問題可以使文件和目錄看起來消失。例如:Does Windows 7 hide files from Ruby?

Ruby代碼來獲取目錄中的文件,如果沒有特殊的 「點」 目錄:

dirname = "C:\Users\username\AppData\Local\Microsoft\Windows\INetCache" 
Dir.entries(dirname) - [".", ".."] 

實例方法:

def dir_contents(dirname) 
    Dir.entries(dirname) - [".", ".."] 
end 


def dir_empty?(dirname) 
    dir_contents(dirname).empty? 
end 

示例答案:

before_count = dir_contents(dirname).count 
... do whatever deletion you want ... 
after_count = dir_contents(dirname).count 
+0

在Win8上添加以下代碼行:y =「#{ENV ['USERPROFILE']}」+'\ AppData \ Microsoft \ Windows \ INetCache'放Dir.entries(Y) - [「。」,「..」]我得到以下輸出:[「Content.IE5」,「counters.dat」,「桌面。IE瀏覽器「>」設置(點擊)「>」查看文件,我得到不同的文件夾結構,其中包含一些favicon.ico文件。如何使我的腳本顯示這些favicon.ico文件? –

+0

@ joelparkerhenderson-系統('RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8')刪除favicon.ico文件,而不是[「Content.IE5」,「counters.dat」,「desktop.ini」,「IE」,「低」,「虛擬化」]我需要統計favicon文件的數量。請告訴我How以獲得包含favocn.ico文件的文件夾的控制權? –

+0

@Shanta我在帖子中添加了更多信息,以幫助您找到favicon文件,以及是否存在Windows 32位與64位文件隱藏效果發生在你身上。 – joelparkerhenderson

相關問題