error & sol/좌충우돌 맥 사용기

맥 런치패드에서 삭제 안 되는 아이콘/앱 삭제하는 방법

익명의 구름 2020. 3. 14. 22:34
반응형
사용 노트북 (MacBook Pro 2017)  
OS : macOS Catalina

둥~둥~!

안녕하세요 둥둥 !

 

앱 정리를 했는데도, Launchpad(런치 패드)에서 지워지지 않는 경우가 있습니다.

Application 폴더 안을 이리저리 수소문한 끝에 해당 파일을 찾아 삭제했는데도 런치 패드에는 왜 계속 남아 있는 건지,, 

저는 지금 'Adobe Photoshop CC 2018 제거'라는 아이콘이 지워지지 않는 상황입니다.

 

[그림 1] 런치패드에서 아이콘이 지워지지 않는 상황

 

이를 터미널(terminal)에서 해결해보겠습니다.


STEP 1

cd $(sudo find /private/var/folders -name com.apple.dock.launchpad)/db

위의 명령어를 통해 런치패드와 관련된 DB 위치의 디렉터리로 이동합니다.

cd 명령어는 change directory의 줄임말입니다. 

 

sqlite3 db "SELECT * FROM apps;"

해당 sql문을 전송하면, apps TABLE에 있는 모든 레코드들을 조회할 수 있게 됩니다.

이를 통해 삭제되지 않은 아이콘의 이름을 확인할 수 있습니다.

하지만 대부분 조회되는 양이 많으실 테니 아래의 명령어를 통해서 찾길 권장합니다.

 

 

STEP 2

sqlite3 db "SELECT * FROM apps;" | grep ['아이콘 이름 전체' or '아이콘 이름 일부']

제 경우에는,
 
sqlite3 db "SELECT * FROM apps;" | grep 'Adobe Phot'
( 캡처된 아래의 예시에서는 sqlite3 db "SELECT * FROM apps;" | grep 'Uninstall'로 했습니다. )

조회된 리스트에서 삭제하려는 앱을 찾으세요. 그리고 그 행(row)에서 맨 앞에 있는 숫자를 확인하세요. 

그 숫자는 앱을 식별할 수 있는 primary key가 되며 속성명은 item_id입니다. 

 

▷ 이는 아래의 TABLE 구조를 보시면 알 수 있습니다.

 

 

STEP 3

sqlite3 db "DELETE from apps WHERE item_id=아이콘 해당 숫자;"

제 경우에는, 119입니다.

sqlite3 db "DELETE from apps WHERE item_id=119;"

삭제하려는 앱의 item_id, 즉 STEP2에서 확인한 숫자대치시켜 sql문을 완성해주신 후 명령어를 실행하세요.

 

 

STEP 4

sudo killall Dock

이제 DB를 수정했으니 런치패드를 재시작해야 합니다.

런치패드는 Dock app에 연결되어 있기 때문에 Dock를 터미널에서 kill 함으로써 런치패드를 재시작할 수 있습니다. 

 



전체 명령어 (예시)

 

[그림 2] before (좌) & after (우)

 


 

도움이 되셨다면

둥둥 떠다니는 광고를 눌러 주실 수 있을까요..?

광고를 클릭하시면 익명의 구름의 포스팅 제작에 작은 도움이 됩니다.

반응형