Показване на списък с хронология на изтеглянията на всички файлове, изтегляни някога в Mac OS X
Съдържание:
- Как да видите списък с всички файлове, изтеглени на Mac
- Изтриване на списъка с хронология на изтеглянията
Искали ли сте някога да покажете списък с цялата хронология на изтеглянията на Mac? Може би знаете, че сте изтеглили файл, но не можете точно да определите откъде сте го взели и трикът „Получаване на информация“ не работи. Или може би се опитвате да проследите файл, който е бил поставен в система, която е довела до проблеми. Независимо дали става дума за отстраняване на неизправности, личен интерес или криминалистика, следната команда ще ви покаже всичко, което сте изтеглили на Mac, независимо от приложението, от което е дошло:
Как да видите списък с всички файлове, изтеглени на Mac
Това работи чрез запитване към базата данни за файлова карантина на OS X, която е насочена към защита на Mac от злонамерени изтегляния. Ще използвате приложението Terminal и sqlite за тази цел.
- Стартирайте терминала от /Applications/Utilities/ и въведете следната команда в един ред:
- Натиснете Return, за да видите списъка с изтеглени файлове
sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV 'изберете LSQuarantineDataURLString от LSQuarantineEvent'
В зависимост от това колко стар е Mac и колко неща сте изтеглили, може да отнеме известно време, за да направите заявка в базата данни и да изхвърлите резултатите. Може да искате да прехвърлите резултатите чрез „сортиране“, за да групирате изтегления списък в подобни елементи или източници, които ще изглеждат така:
sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV 'изберете LSQuarantineDataURLString от LSQuarantineEvent' | вид
За по-лесно гледане можете също да пренасочите изхода към текстов файл, тази команда ще изхвърли списъка във файл, наречен „QuarantineEventList.txt“ на работния плот на активните потребители:
sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV 'изберете LSQuarantineDataURLString от LSQuarantineEvent' > ~/Desktop/QuarantineEventList.txt
Резултатът изброява всичко, което е преминало през Quarantine Manager, което за последните няколко версии на Mac OS X е буквално всеки елемент, изтеглен на Mac, независимо от приложението, от което идва. Като цяло, колкото по-стар е Mac и колкото повече файлове са изтеглени, толкова по-голям е списъкът и толкова по-дълго може да отнеме изпълнението на заявката.
Този списък работи дори ако сте изключили файловата карантина за файлове и приложения, благодарение на inket за проверката на това.
Изтриване на списъка с хронология на изтеглянията
За тези, които предпочитат да нямат цялостен исторически списък на изтеглените файлове, можете да изпълните следната команда, за да изтриете съдържанието на карантинната база данни:
sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV 'изтриване от LSQuarantineEvent'
Можете да го стартирате поотделно или да го поставите в .bash_profile или .profile, за да изчистите базата данни автоматично, когато се стартира нов терминален прозорец.
Това е тествано и продължава да работи в много версии на Mac OS X, от по-ранни версии до OS X El Capitan (10.11.x+), OS X Yosemite, OS X Mavericks 10.9.5 и предполагаемо по-нова. Кажете ни в коментарите, ако имате успех с тази команда и версията на OS X, с която сте я използвали.
Благодаря на Scott за чудесния съвет и благодаря на Wiggums за синтаксиса за изтриване.