답변:
아래의 스크린 샷은 Finder 검색 쿼리를 사용하여 App Store가 아닌 모든 응용 프로그램을 찾는 방법을 보여줍니다. "원시 쿼리"조건은 다음과 같습니다. kMDItemAppStoreHasReceipt != 1. patrix의 대답과 마찬가지로 "_MASReceipt"라는 디렉토리를 테스트하는 것과 같습니다. 그러나 Finder 검색 쿼리를 사용하는 것은 Terminal 사용에 익숙하지 않은 사람들에게 더 쉬워야합니다.
kMDItemCFBundleIdentifier != "com.apple.*". 이것은 App Store에서 오지 않지만 macOS (Mail, Safari, iTunes 등)의 일부인 다양한 응용 프로그램과 같은 Apple 응용 프로그램을 걸러냅니다.
/Applications (적어도 기본적으로) 해당 폴더 외부의 응용 프로그램은 저장소에 있지 않습니다. 상점의 응용 프로그램에는 NAME.app/Contents/_MASReceipt 폴더에서 사용할 수 있도록 (터미널에서)
cd /Applications
for i in *.app; do
[[ -d "$i/Contents/_MASReceipt" ]] || echo $i
done
모든 비 상점 응용 프로그램을 찾으려면
bash 터미널에서의 기본 설정입니다. 보통 쉘 전환에 충분히 경험이있는 사람이라면 bash 관련 항목을 쉘 선택에 충분히 적용 할 수 있습니다. 또는 사용 [ ... ] 대신에 [[ ... ]]
mdfind 'kMDItemContentType == "com.apple.application-bundle" && kMDItemAppStoreHasReceipt != 1'. 응용 프로그램을 찾으려면 해야 할 것 App Store에서 와서!= 1확인하다== 1. App Store와 관련된 몇 가지 다른 스포트라이트 속성이 있습니다. Keynote의 값을 확인하려면 다음과 같습니다.mdls /Applications/Keynote.app | grep kMDItemAppStore.