Czy istnieje sposób, aby Terminal na lwie zaczął się uruchamiać bez problemów (bez buforowanej historii)?

13

Jak mogę zapobiec wyświetlaniu przez Terminal moich starych danych wyjściowych po uruchomieniu?

Chciałbym, aby zawsze zaczynało się od czystego okna.

guidoizm
źródło

Odpowiedzi:

13

Możesz zmienić terminal tylko za pomocą tego jednego polecenia, aby napisać nowe preferencje dla tej konkretnej aplikacji.

defaults write com.apple.terminal NSQuitAlwaysKeepsWindows -bool false

Jest to ogólnie rzecz biorąc, więc w com.apple.terminalrazie potrzeby zamień safari lub QuicktimeplayerX lub cokolwiek w części polecenia. To ustawienie przełącza domyślne zachowanie zapisu po zamknięciu tej aplikacji. Znajdziesz wiele innych aplikacji, które działają dobrze z tym ustawieniem, wyszukując w NSQuitAlwaysKeepsWindows .

Oczywiście należy wydać to defaultspolecenie po zamknięciu wszystkich okien, a następnie zamknięciu aplikacji, aby upewnić się, że ustawienia zostaną odczytane przy następnym uruchomieniu Terminalu.

bmike
źródło
Możesz także zamknąć wszystkie okna podczas wychodzenia. Czasami lubię, żeby było czyste. Czasami lubię zachować stare wyjście.
bahamat
5

Oprócz ustawienia preferencji, aby zawsze pomijać Wznów, możesz również kontrolować to przy wychodzeniu, naciskając klawisz modyfikatora Opcja, aby „Wyjdź…” zmieniło się w „Wyjdź i odrzuć Windows”. np. możesz wpisać Option-Command-Q, aby wyjść bez zapisywania stanu. Możesz także nacisnąć modyfikator Shift podczas otwierania aplikacji, aby uniemożliwić jej przywrócenie stanu do Wznów.

Istnieje również preferencja terminala (bez interfejsu użytkownika) do kontrolowania liczby wierszy przewijania do przywrócenia, które można ustawić na zero, chociaż nadal przywraca wyświetlaną zawartość:

defaults write com.apple.Terminal RestoreScrollbackLines 0
Chris Page
źródło
0

Wydaje się, że istnieje jeden przypadek, w którym wyłączanie NSQuitAlwaysKeepsWindowsnie działa: gdy terminal zostanie zabity przez killall Terminal, i prawdopodobnie także, gdy się zawiesi lub zostanie zmuszony do wyjścia.

Używam killall Terminalregularnie, ale kiedy wznawia się, wznawia moją historię bash. Zasadniczo polecenia z sesji po wznowieniu nie zostaną zapisane. Normalne zachowanie zapisu jest przywracane dopiero po zamknięciu i ponownym otwarciu Terminal.app. Wygląda jednak na to, że całkowite wyłączenie jakichkolwiek funkcji wznawiania naprawia historię bash:

chmod a-rwx ~/Library/Saved\ Application\ State/com.apple.Terminal.savedState

Dzięki odpowiedzi willWorkForCookies na: Jak zapobiec zapisywaniu / przywracaniu dowolnego zapisanego stanu przez jedną aplikację .

mach
źródło
-3

Możesz dezaktywować „stan zapisu” dla poszczególnych aplikacji, zajrzyj na https://faqintosh.com/risorse/en/sys/swapsaveability/

HTH

Marco Balestra
źródło
1
Witamy w Apple! Chociaż teoretycznie może to odpowiedzieć na pytanie, lepiej byłoby zawrzeć tutaj istotne części odpowiedzi i podać odnośnik.
daviesgeek