關於macbook的launchpad的圖標清除和亂序問題


前言:

  事情是這樣的,使用steam安裝軟件時,點選了創建快捷方式,於是launchpad中就出現了圖標。但是他會默認歸類到游戲文件夾中,我就較真的,一向明明是應用軟件,你非要給我歸類游戲,算了我不要你這圖標了,我天真的想把軟件卸掉重新安裝,選擇不創建款街方式,結果是我太年輕,軟件是刪掉了,但是圖標在,我...我...我就杠上了...(PS:簡單問題描述——Launchpad的圖標不能完全刪除,且偶爾會出現亂序)

正常的在網上搜索了一些資料,主要參考https://blog.csdn.net/OMars/article/details/89743565https://zhuanlan.zhihu.com/p/55866195https://www.maczd.com/post/clean-macos-icon-cache.html,本人在此表示感謝。

其實第一個和第二個說的是同一件事情,因為前期搜到的資料基本都是說找到數據庫,執行sql刪掉對應的數據。所以也就面臨着同樣的問題,那就是重置Dock圖標會出現。然后我就一直在想到底是什么原因導致的它恢復就會出現。

開始以為會有備份的數據,但是網上沒有搜到相關的資料,排除了,后來想到了緩存,然后找到了第三個資料。然后看完抱着試一試的心態解決了我的問題。

 

操作過程:

  1.刪除所有圖標和緩存

sudo find /private/var/folders/ \( -name com.apple.dock.iconcache -or -name com.apple.iconservices \) -exec rm -rfv {} \;

sudo rm -rf /Library/Caches/com.apple.iconservices.store;

  2.刪除圖標(實用第一種和第二種都可以,我懶不想截圖,這里就上Terminal的吧)

cd /private/var/folders 

  在和個目錄下會出現好幾個文件,且每個人的不一定相同,感覺上是第一個,這里可能需要找找,直到找到com.apple.dock.launchpad目錄就算是找對了,

我的路徑/private/var/folders/rj/1z_wbdws1dl5d_j2ksfhltj00000gn/0/com.apple.dock.launchpad,供參考。這個路徑下有一個db文件夾,db文件家里面有db文件(就是那個數據庫),再給個參考

XXX@XXX-MacBook-Pro db % pwd
/private/var/folders/rj/1z_wbdws1dl5d_j2ksfhltj00000gn/0/com.apple.dock.launchpad/db
XXX@XXX-MacBook-Pro db % ls
db    db-shm    db-wal
mario@Marios-MacBook-Pro db % 

  在db這個目錄下,實用如下命令,刪除你不想要的應用圖標

sqlite3 db "delete from apps where title=' XXXXX';"

  3.結束finder 和 dock相關進程

killall Dock
killall Finder

然后問題就解決了。其實我只是個搬運工,希望能以上方式也能解決你刪不掉的圖標和亂序問題。

 

最后總結一下這個問題的原因,有一部分是推測的:

  刪不掉的圖標——這個原因,應該是安裝一些第三方網站下載的軟件,或者是通過第三方平台間接的安裝軟件,或者一些軟件附帶的一些組件。刪不掉或者刪掉在某種特殊狀態下就又出現了。

  圖標偶爾亂序(不定時、不定期)——這個原因,是因為遇到刪不掉的圖標之后,采用了一些非常規的方式刪除了圖標,但是沒有刪除干凈,也就是說數據庫中的數據刪除了,但是開機后緩存加載的表沒有刪除,形成了數據不對稱。在關機、注銷用戶或者結束dock進程后兩張表取合集或者是緩存表回寫。導致和記錄位置的表數據對不上,之前調整的位置就發生了變化。

  所以有個大膽的猜想:

  如果之前是一個普通用戶,創建一個新的普通用戶,登陸初始化這個普通用戶,然后切換到一個管理員用戶,把那份數據拷貝過去應該是可以的。    

  如果之前是一個管理員用戶,重新創建一個新管理員,登陸新管理員,把新管理員的那份數據拷貝過去。

  理由如果當前亂戲用戶不登陸,那就不會有加載緩存,替換過去應該是可以的。

之所以有這樣的猜想,是因為在我管理員亂序的情況下,我創建的心普通用戶不但沒有亂序,也沒有那個刪除掉的圖標。

之所以要求創建的用戶和之前的用戶同一級別,是擔心有些某些軟件的安裝位置和權限問題導致普通用戶本身就比管理員用戶訪問的軟件少,例如anaconda,管理員安裝后,普通用戶沒有。這一點我不清楚anaconda是不是僅為當前用戶安裝的,因為一路next,是默認的安裝路徑。

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM