Menu ostatnich produktów przestało działać na moim komputerze iMac

36

Ostatnio zauważyłem, że na moim komputerze iMac z systemem El Capitan menu Otwórz ostatnie przestało się aktualizować, zarówno w menu Apple, jak i w aplikacjach, i zarówno dla elementu menu Otwórz ostatnie, jak i listy, która pojawia się w Docku.

Sprawdziłem w Preferencjach systemowych | Ogólne | Najnowsze przedmioty, i mówi: Brak. Próbowałem kilka razy zresetować go do 20, ale pojawia się jako Brak, gdy wrócę do Preferencji systemowych.

Mam nadzieję, że ktoś może mi pomóc rozwiązać ten problem.

MarkAurelius
źródło

Odpowiedzi:

17

Dla mnie to częściowo naprawiło:

  1. Zamknij wszystkie otwarte aplikacje.
  2. Przenieś ~ / Library / Preferences / com.apple.recentitems.plist (i ~ / Library / Preferences / com.apple.recentitems.plist.lockfile, jeśli istnieje) do katalogu kopii zapasowej.
  3. Restart.

W moim przypadku to naprawiło listy ostatnich pozycji w menu Plik w każdej aplikacji i menu Apple. Ale menu kontekstowe ikon Docku nadal się nie aktualizują.

Dan Wich
źródło
1
Czekam na aktualizację 3 miesiące i nic. 😬
BG Bruno
To powinna być wybrana odpowiedź, działa świetnie
mattgabor
1
Kiedy to zrobiłem, zadziałało. To, co naprawdę mnie zaskoczyło, to fakt, że Ostatnie pojawili się od razu . Zepsuty .plist nie był zepsutą pamięcią podręczną, tylko zepsuł wyświetlanie ostatnich.
benc
6

Wpadłem na to dzisiaj na miesięcznym komputerze iMac. Jedyne, co nie jest świeże na tym koncie, to moje konto, które zostało zreplikowane na 5 komputerach i 12 głównych wersjach MacOS przy użyciu Migration Assistant, gdy jest to możliwe, pozostawiając dość sporą cruft w ~ / Library / Preferences /. Niestety, w ostatnich wersjach Apple skomplikowało skuteczne czyszczenie tego katalogu poprzez usuwanie plików, ponieważ cfprefsdzarządza prawdziwymi informacjami o preferencjach i musisz ładnie z nim porozmawiać za pomocą tego defaultsnarzędzia.

W każdym razie uwielbiam to, że za każdym razem, gdy próbowałem zmienić preferencje, otrzymywałem sekwencję wpisów dziennika:

Jul 14 18:14:03 extravagant sharedfilelistd[411] <Critical>: [default] [<CFString 0x7fff77ea0e00 [0x7fff77f58440]>{contents = "com.apple.LSSharedFileList.RecentApplications"}] List write failed invalid info items: (null) properties: (null)
Jul 14 18:14:03 extravagant sharedfilelistd[411] <Error>: -[ListStore writeListItems:properties:withListIdentifier:notificationHander:] [com.apple.LSSharedFileList.RecentApplications] List write failed invalid info items: (null) properties: (null)
Jul 14 18:14:05 extravagant com.apple.preference.general.remoteservice[85562] <Warning>: Error getting number of recent items of type 2, LSSharedFileListCopyProperty returned NULL
Jul 14 18:14:11 extravagant com.apple.preference.general.remoteservice[85562] <Warning>: New number of recents: 30
Jul 14 18:14:11 extravagant com.apple.preference.general.remoteservice[85562] <Warning>: Error getting number of recent items of type 1, LSSharedFileListCopyProperty returned NULL
Jul 14 18:14:11 extravagant com.apple.preference.general.remoteservice[85562] <Warning>: Error getting number of recent items of type 2, LSSharedFileListCopyProperty returned NULL
Jul 14 18:14:11 extravagant com.apple.preference.general.remoteservice[85562] <Warning>: Error getting number of recent items of type 3, LSSharedFileListCopyProperty returned NULL
Jul 14 18:14:13 extravagant com.apple.xpc.launchd[1] (com.apple.preference.general.remoteservice[85562]) <Notice>: Service exited due to signal: Killed: 9

Ponadto, zarówno defaults domainsi kilkadziesiąt plików w Preferencjach powiedziało mi, że większość aplikacji z prawidłową domeną domyślną, taką jak com.example.appname, również miała domenę domyślną, taką jak com.example.appname.LSSharedFileList, która zawierała listy ostatnio używanych plików. Tyle że ostatnio nie były wcale używane. Żaden z plików * .LSSharedFileList.plist nie zmienił się od czasu mojej migracji z mojej starej maszyny Yosemite i żaden z nich nie miał com.apple.recentitems.plist. Więc wyczyściłem dom, uruchamiając te polecenia w ~ / Library / Preferences /:

defaults delete com.apple.recentitems
rm com.apple.recentitems.plist*

defaultsKomenda mówi cfprefsdaby usunąć wszystkie ustawienia w tej domenie, która opuszcza 42-bajtowy logicznie pusty .plist plik i 0-bajt .plist.lockfile plik, który rmusuwa polecenie.

defaults find LSSharedFileList |grep 'keys in domain .*LSShared'|cut -d"'" -f2 |xargs -L1 defaults delete
rm  *LSSharedFileList.plist*

Mniej oczywiste, ale zasadniczo to samo dla wszystkich defaultsdomen z LSSharedFileList w ich nazwach

find . -name "*.plist" -print0 |xargs -0 -L1 plutil -lint |grep -v ': OK$'|cut -d: -f1|sed 's/.*/"&"/' |xargs rm

Jeszcze mniej oczywiste, ale pozornie kluczowe. Ten potok znajduje wszystkie pliki * .plist w bieżącym katalogu (którym był ~ / Library / Preferences /,) sprawdza poprawność każdego z nich plutil -lint, analizuje nazwy plików, które nie są „OK”, przywołuje je do ochrony osadzone spacje itp. i usuwa je wszystkie. W moim przypadku wszystkie niepoprawne pliki * .plist były 0-bajtowymi antykami dla rzeczy, które i tak nie mogą działać na El Cap, więc byłem pewien, że nie usuwam żadnych rzeczywistych informacji. YMMV !!

find . -size 42c -name "*plist" -delete

Spowodowało to usunięcie wszystkich plików * .plist o długości 42 bajtów, wielkości logicznie pustej listy w formacie binarnym. Kilka osób kręciło się wokół i mogły być przyczyną skargi sharedfilelistd.

killall sharedfilelistd

To zakończyło sharedfilelistddziałanie na moim koncie. System automatycznie zrestartował nową instancję. Nie jestem pewien, czy było to potrzebne, ale wydawało się rozsądne, ponieważ właśnie usunąłem garść informacji z podsystemu preferencji, które były związane ze starym sposobem robienia tego, co sharedfilelistdnajwyraźniej robi się w El Cap.

UWAGA: Te 7 poleceń jest skróconą wersją tego, co zrobiłem, co miało sens i miało efekty, rozrzucone w ciągu 3 godzin grzebania i testowania oraz próby znalezienia informacji sharedfilelistdbezskutecznie.

Warto również zauważyć, że nie ma sudotu żadnego związku , ponieważ byłem w swoim własnym ~ / Library / Preferences /, manipulując swoim własnym obszarem preferencji. Menu Ostatnie elementy, a tym samym jego ustawienia są specyficzne dla użytkownika, więc gdziekolwiek to ustawienie jest przechowywane (nigdy tego nie wymyślono ...) musi być również specyficzne dla użytkownika, a nie coś, co wymaga rootowania do naprawienia. Istnieje wcześniejsza odpowiedź, która obejmuje niewyjaśnione masowe pozwolenie / ACL / czyszczenie flag, uruchamiane z sudo, które nawet nie działało dla autora i może spowodować poważną szkodę systemową. To nic takiego. Należy również pamiętać, że nie wymaga wylogowywania, ponownego uruchamiania, uruchamiania w trybie odzyskiwania lub robienia czegokolwiek, co może być szkodliwe.

Bill Cole
źródło
W moim systemie samo uruchamianie killall sharedfilelistdwydaje się być perfekcyjne! (Zdecydowanie jestem jednak w innej sytuacji: nie mam starego migrowanego profilu, ten problem zdarza się losowo, ponowne uruchomienie powoduje, że na jakiś czas zniknie).
peterflynn
Działa świetnie, gdy żadne inne rozwiązanie nie działa - moje ostatnie dokumenty zostały nawet przywrócone po uruchomieniu tych poleceń. 👏
D. Thompson
4

Obejście

Aby wyświetlić listę ostatnio używanych aplikacji w Docku, spróbuj wykonać następujące czynności:

  1. Otwórz Finder, Plik> Nowy inteligentny folder
  2. Naciśnij przycisk + obok Zapisz
  3. Wybierz „Rodzaj” to „Aplikacja”
  4. Naciśnij przycisk + Wybierz „Data ostatniego otwarcia” to „w tym tygodniu”
  5. Kliknij Zapisz i zaznacz „Dodaj do paska bocznego”

  6. Na pasku bocznym kliknij prawym przyciskiem myszy utworzony folder inteligentny i kliknij „Dodaj do Docku”

Ivan Chau
źródło
4

Otwórz ostatnio używane elementy: wybierz menu Apple> Ostatnie elementy. Zobaczysz ostatnio używane aplikacje, dokumenty i serwery. W przypadku niektórych aplikacji możesz także zobaczyć dokumenty, nad którymi ostatnio pracowałeś. Aby zmienić liczbę elementów wyświetlanych w menu, wybierz menu Apple> Preferencje systemowe, kliknij Ogólne, a następnie kliknij menu podręczne „Ostatnie elementy” i wybierz liczbę.

Iglica
źródło
3
W moim przypadku miałem menu Apple> Preferencje systemowe> Ogólne „Ostatnie elementy” ustawione na 0. Po prostu zmieniłem wartość i to wszystko.
Fred K
4

Poniższe działało dla mnie!
Próbowałem wszystkich poprzednich odpowiedzi, ale żadna nie działała.
Potem natrafiłem na poprawkę opisaną tutaj na forach Apple :

Pierwsza runda (wypróbowana, ale nie działała dla mnie):

Uwaga: poniższe polecenie zmienia prawa własności i prawa dostępu do wszystkich plików w katalogu domowym / użytkownika i może mieć nieoczekiwane (i szkodliwe) skutki uboczne.

Otwórz terminal i wpisz:

echo $TMPDIR

Jeśli ( i tylko wtedy ) zobaczysz coś takiego /var/folders/8b/mn2vgjs10gs83krfy1fwxwb80000gp/T/, uruchom

sudo find ~ $TMPDIR.. \
         -exec chflags -h nosappnd,noschg,nosunlnk,nouappnd,nouchg,nouunlnk {} + \
         -exec chown -h $UID {} + -exec chmod +rw {} + \
         -exec chmod -h -N {} + -type d -exec chmod -h +x {} + 2>&-

Druga runda (ta zadziałała dla mnie):

  • Uruchom w trybie odzyskiwania.
  • W trybie odzyskiwania uruchom terminal (z menu narzędzi)
  • Wpisz resetpasswordi wciśnij Enter (bez obaw)
  • Wybierz wolumin startowy
  • Wybierz odpowiedniego użytkownika
  • U dołu w obszarze Resetuj uprawnienia do katalogu domowego i listy ACL kliknij przycisk Resetuj
  • Powtórzyłem ostatnie kroki dla wszystkich użytkowników + root
  • Zrestartuj swój komputer

Opis na forach Apple jest naprawdę jasny, więc jeśli masz wątpliwości, idź tam. Mam nadzieję, że pomoże to również innym.

FYI: Wszystkie moje ostatnie elementy zniknęły we wszystkich aplikacjach, w menu Apple cały element menu nawet zniknął, a zmiana w Preferencjach systemowych z żadnej na cokolwiek powracała do zera.
Korzystam z komputera MacBook Air (początek 2014 r.) Z systemem El Capitan 10.11.3

wintvelt
źródło
To zadziałało dla mnie, ale ostrzegam: jeśli korzystasz z usługi synchronizacji plików, uruchomienie tego polecenia może spowodować ponowne przesłanie plików. Korzystam z Dropbox i tak mi się stało; > 50 000 plików rozpoczęło synchronizację. Możesz zrobić określone foldery zamiast tylko domowego (~).
Chadwick,
2
Ten horror „sudo”, który, jak mówisz, nie działał, ślepo usuwa każdy smak ochrony ze znacznej kolekcji plików i katalogów. To może otworzyć luki, które nie mają zwykle.
Bill Cole,
2

To samo zdarzyło się w aplikacjach, ale w mojej wyszukiwarce ostatnie elementy pokazują wiele duplikatów tego samego ostatniego elementu i wydaje się, że dodają jeden za każdym razem, gdy ponownie otwieram aplikację. Próbowałem zrobić zrzut ekranu z ostatnich elementów, ale oczywiście, jeśli spróbujesz nacisnąć Shift-Command-4, to zmienia ostatnie elementy na „pokaż XXXX w wyszukiwarce”, ponieważ przytrzymałeś polecenie. Ulubione również zniknęły z okien dialogowych. smh co w F dzieje się z działem rozwoju i kontroli jakości Apple w ciągu ostatnich kilku lat?

ostatnie elementy aplikacji

znajdź ostatnie przedmioty

Nathaniel Brown
źródło
Mam dokładnie ten sam problem. Jakieś rozwiązania?
Stefan Arn
2
Złożyłem raport o błędzie radaru do firmy Apple. Błąd radaru # 23370920. Poczekajmy, co odpowiedzą.
Stefan Arn
Chociaż przydatne informacje, ten materiał nie jest odpowiedni jako odpowiedź na stosie wymiany. Idea SE jest konkretną odpowiedzią na wąsko ukierunkowane pytanie. Ten post stanowi kontynuację dyskusji, ale nie zapewnia bezpośredniego rozwiązania pytania. I to jest styczna, ponieważ pytanie dotyczy ustawienia, które nie przylega do obecności systemu. Problem tutaj może, ale nie musi być bezpośrednio związany. Proponuję opublikować jako własne pytanie, ale przypadkiem już opublikowałem ten sam, znikający element menu „Najnowsze elementy” .
Basil Bourque
Aby rozwiązać problem ze zrzutem ekranu, użyj aplikacji Grab dołączonej do systemu Mac OS X. Skorzystaj z tej Timed Screenfunkcji.
Basil Bourque
Nie publikuj „odpowiedzi”, które nie odpowiadają oryginalnemu pytaniu. Jeśli masz inne pytanie, prześlij je osobno. Jeśli masz komentarz, opublikuj go jako komentarz. Jeśli chcesz po prostu wypowiedzieć, zrób wpis na blogu. Pracujmy razem, aby utrzymać StackExchange w czystości. Dzięki!
Olie
2

Rozwiązanie jest o wiele prostsze. Przejdź do Preferencji systemowych. Generał. Najnowsze przedmioty: wybierz od brak do 50.

Następnie uruchom ponownie komputer

Wicho Lopez
źródło
To powinno działać, ale cały problem polega na tym, że nierzadko uszkadza się twoje preferencje na tyle, że nie działa.
Bill Cole
0

Aby obejść ten problem, użyj TinkerTool, aby ustawić „Najnowsze elementy” na dowolną wartość.

Jak dotąd wydaje się zachowywać zgodnie z oczekiwaniami…

Eugéne
źródło
-3

przejdź do „preferencji systemowych”> „ogólnych”> „ostatnich elementów” el capitan zresetuj to z jakiegoś powodu ustaw go na dowolną długość listy i zacznie działać od nowa

Tomek
źródło
3
Z pytania: „Sprawdziłem w Preferencjach systemowych | Ogólne | Ostatnie pozycje i mówi Brak. Próbowałem kilka razy zresetować go do 20, ale pojawia się jako Brak, gdy wracam do Preferencji systemowych. „
Timothy Mueller-Harder
To samo dzieje się ze mną; Nie mogę tego zmienić z „Brak”.
Rick