Files

無論我做什麼都無法刪除文件

  • March 28, 2021

所以這是我的問題,我有一個非常奇怪的文件,我無法從電腦中取出。

我幾乎嘗試了一切。首先,我使用了 CleanMyMac、TrashIt、CCleaner 等軟體……它們都無能為力。

我試圖把它扔進垃圾桶並“固定垃圾”。它沒有完成,所以我最終中止了它。

然後我嘗試使用帶有sudo rm -R但沒有的終端:仍然存在。該文件是不可回收的,因為它似乎不存在……

這是我得到的視圖:

sh-3.2# sudo rm -R /Users/Mawel/.Trash/Tunnelblick.app 
rm: /Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/Sparkle.framework/Resources: No such file or directory
rm: /Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/Sparkle.framework/Versions/Current: No such file or directory
rm: /Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/Sparkle.framework/Versions: Directory not empty
rm: /Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/Sparkle.framework: Directory not empty
rm: /Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks: Directory not empty
rm: /Users/Mawel/.Trash/Tunnelblick.app/Contents: Directory not empty
rm: /Users/Mawel/.Trash/Tunnelblick.app: Directory not empty

它基本上是在告訴我那裡什麼都沒有,我什麼都不能刪除嗎?

編輯

我嘗試了您的一些答案,尤其是我強制逐個刪除每個文件的答案。這是發生的事情的範例:

sh-3.2# cd Sparkle.framework/
sh-3.2# ls -al
total 8
drwxr-xr-x@ 4 root  wheel  136 22 jan  2014 .
drwxr-xr-x@ 3 root  wheel  102 17 jan  2014 ..
lrwxrwxrwx@ 1 root  wheel   26 22 jan  2014 Resources -> Versions/Current/Resources
drwxr-xr-x@ 3 root  wheel  102  9 fév  2014 Versions
sh-3.2# sudo rm -f Resources 
sh-3.2# ls -al
total 8
drwxr-xr-x@ 4 root  wheel  136 22 jan  2014 .
drwxr-xr-x@ 3 root  wheel  102 17 jan  2014 ..
lrwxrwxrwx@ 1 root  wheel   26 22 jan  2014 Resources -> Versions/Current/Resources
drwxr-xr-x@ 3 root  wheel  102  9 fév  2014 Versions
sh-3.2# 

編輯 2

感謝 DisplayName,我終於設法通過將它們移動到 /tmp 文件夾並清理它來刪除它們。

將它們移至/tmp並重新啟動(或以任何其他方式清空/tmp)。我以前遇到過這個問題,這是我解決它的唯一方法。

在執行此操作之前,您應該調查為什麼它們沒有被刪除,而是將其用作最後的手段。這樣做沒有危險,但我建議嘗試了解為什麼它們之前沒有被刪除。

巴爾德拉尼:

  1. 請以 Mawel 使用者身份登錄,並執行以下操作,使用 Mawel 使用者密碼驗證特權模式 (sudo)。請報告執行命令返回的任何輸出。
sudo chflags -vv -R nouchange,noschange /Users/Mawel/.Trash
  1. 請顯示以下輸出:
sudo ls -lO@ABGFR /Users/Mawel/.Trash/
  1. 接下來,請顯示以下輸出:
sudo fuser -fu /Users/Mawel/.Trash
  1. 接下來,請顯示以下輸出:
sudo lsof | grep "/Users/Mawel/.Trash"
  1. 最後,請顯示兩者的輸出:
sudo stat -x /Users/Mawel/.Trash

sudo find /Users/Mawel/.Trash -type f,d -exec stat -x {} \;

F. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=-=-=-=-=-=

萬全之策:

sudo rm -f "/Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/Sparkle.framework/Versions/*" 
sudo rm -f "/Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/Sparkle.framework/*"
sudo rm -f "/Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks/*"
sudo rm -fdR "/Users/Mawel/.Trash/Tunnelblick.app/Contents/Frameworks"
sudo rm -fdR "/Users/Mawel/.Trash/Tunnelblick.app"

快速而骯髒的修復:

sudo rm -fdR /Users/Mawel/.Trash/Tunnelblick.app

替代修復:

find /Users/Mawel/.Trash/Tunnelblick.app -f -exec rm -f {} \; 

另一個替代修復(YAAF):

find /Users/Mawel/.Trash/Tunnelblick.app -f -print | xargs -I % rm -f "%"
rm -fdR /Users/Mawel/.Trash/Tunnelblick.app/*

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