Firefox

火狐臨時文件

  • July 24, 2020

在 Firefox 中,當我選擇打開文件而不保存它並且沒有內部外掛(如 pdf 或 doc 文件)時,預設行為是將文件作為臨時文件保存在 /tmp 中,並且選擇的應用程序(如mupdf 或 libreoffice)以臨時文件作為輸入打開。臨時文件的文件名通常是下載文件的原始名稱,除非 /tmp 中已經存在同名文件。在這種情況下,後綴會附加到文件名(-1、-2、-3 等)的副檔名之前。當 Firefox 關閉時,臨時文件將從 /tmp 中刪除(除非更改預設行為)。

我認為當不再需要時(即,當使用它的應用程序停止使用它時)刪除每個臨時文件會更方便。有沒有辦法實現這個?

作為替代方案,對我來說更好的行為是將 /tmp 中的現有文件替換為新文件,以防已存在同名文件?(即,不更改文件名)。這可能嗎?

要盡快刪除臨時文件,您可以編寫一個包裝器,例如:

#!/bin/sh
the-application "$1"
rm -f "$1"

替換the-application為實際執行檔的名稱,並要求 Firefox 使用此包裝器而不是應用程序。或者:

#!/bin/sh
the-application "$1"
case "$1" in
 /tmp/*) rm -f "$1" ;;
esac

如果未來的 Firefox 版本不會為“file:” URL 創建新文件(在這種情況下您不希望刪除該文件),這種形式會更安全。

請注意,如果在退出應用程序之前刪除文件,某些應用程序會立即返回並且可能無法正常工作。在這種情況下,您無能為力(至少以可靠的方式)。

關於替代方案(替換具有相同名稱的現有文件),這可能會與使用 的其他應用程序產生衝突/tmp,並可能帶來安全隱患。一般來說,這不是一個好主意。

引用自:https://unix.stackexchange.com/questions/179321