Come aprire un terminale pulito in Mac OS X Lion?


10

Ogni volta che apro un terminale, vengono visualizzati gli ultimi comandi utilizzati.

Mi piacerebbe avere un terminale pulito quando lo apro, ma non ho trovato il modo di farlo.

Ad esempio se durante l'utilizzo del terminale faccio:

defaults write com.apple.Finder...etc

e poi chiudo il terminale. La prossima volta che apro il terminale vedrò questa stessa linea in grigio (per indicare che è un comando che ho usato l'ultima volta che ho aperto il terminale) e una linea per iniziare a scrivere sotto.


Puoi fare un esempio di ciò che vedi quando apri il terminale?
Slhck,

Ho impostato clearun comando di cancellazione della finestra di output corretto sulla mia macchina. Lo cercherà tra circa sei ore a meno che qualcun altro non fornisca una risposta prima di allora.
Daniel Beck

@Daniel Lo apprezzerei molto, grazie!
Proxificare il

Risposte:


4

Aggiungi quanto segue alla fine di .bash_profile:

printf '\033c'

Questo cancellerà davvero il Terminale. Ho anche definito la seguente funzione, poiché non mi piaceva il comportamento a scorrimento del default clear:

function clear {
    printf '\033c'
}

Penso che sia lo stesso di un hard reset del Terminal ( Cmd-Opt-R), ma non ne sono del tutto sicuro.


questa non è la risposta però - Lion ripristina le finestre della precedente sessione di Terminal. Quello che devi fare è disattivare Riprendi per Terminale come Josh dice di seguito. Inoltre, devi imparare a chiudere le finestre che non usi più prima di chiudere l'applicazione in Lion.
w

1
@ w00t Beh, immagino tu stia capendo la domanda in modo diverso da me. L'utente è preoccupato solo per le linee grigie relative alla sua sessione precedente; da nessuna parte vengono effettivamente menzionate le finestre. Anche le sessioni sono nuove; che è facilmente visibile quando si cdesegue da qualche parte, quindi la chiusura e la riapertura del terminale. Ci sono solo le linee grigie dalla fine della sessione precedente. Tra la mia risposta e quella degli altri, può sicuramente trovare una soluzione al suo problema, qualunque interpretazione sia corretta. A proposito, la mia risposta ha il segno di spunta, anche se non è stato il primo, quindi non può essere così male.
Daniel Beck

ESC cè "Full Reset (RIS)", che è lo stesso di Shell> Invia Hard Reset; tuttavia, ciò cancella semplicemente il display e ripristina lo stato del terminale. Non cancella lo scrollback. Se tutto ciò che Proxify sta cercando è un modo per cancellare lo schermo, basta usare il normale clearcomando (non la clearfunzione fornita in questa risposta). Altrimenti, ESC cè insufficiente ed esegue un reset del terminale completamente inutile.
Chris Page

@ChrisPage Avrei giurato di aver cancellato anche lo scrollback. Hai ancora un sistema 10.6 in giro? Quando l'ho pubblicato, ero ancora su Snow Leopard. Su Lion non fa differenza, proprio come hai scritto.
Daniel Beck

@DanielBeck Prima della 10.7, la sequenza di escape Erase in Display (ED) (ESC [… J) poteva solo cancellare lo schermo, non lo scrollback. A partire dalla 10.7, Terminal supporta la variante xterm ED che cancella lo scrollback: ESC [3 J invisible-island.net/xterm/ctlseqs/ctlseqs.html
Pagina Chris


9

La funzionalità di ripristino della finestra di Lion è impostata su un'applicazione in base all'applicazione. Puoi fermarlo in Terminale con il seguente comando:

defaults write com.apple.Terminal NSQuitAlwaysKeepsWindows -bool false

Poiché stai modificando le impostazioni del Terminale mentre il Terminale è aperto, dovrai chiudere e riavviare il Terminale due volte prima di vedere l'effetto.


Questa dovrebbe essere la risposta secondo me. Questo imposta le impostazioni predefinite per tutti i Mac OS X.
KVISH

7

Command-K cancella lo Scrollback.


Questa è la soluzione più semplice e migliore solo per una finestra permanente a poche finestre, ma non per una disabilitazione permanente della funzione.
Simone Manganelli,

1

Penso che ciò che vuoi non sia giocare con soluzioni alternative, ma vuoi sapere dove è memorizzato sul disco il "testo grigio" che vedi in Terminale e rimuoverlo.

Questo testo è memorizzato qui: ~ / Library / Saved Application State / com.apple.Terminal.savedState.

Rimuovi la cartella e sarai felice.


0

Una soluzione: esporta TERMcon un valore ragionevole come "xterm" e posiziona il clearcomando sull'ultima riga del tuo ~/.bash_profile. Altre soluzioni potrebbero essere escogitate.


2
clearnon cancella il Terminale, scorre solo verso il basso di una pagina.
Daniel Beck

@DanielBeck clearcancella il display del terminale. In alcuni casi lo fa spostando il contenuto dello schermo nello scrollback (ma non sempre, ad esempio, quando è selezionato lo schermo alternativo).
Chris Page

Non è necessario modificare il valore di TERM a meno che non sia già stato modificato dal valore predefinito. Per impostazione predefinita, Terminal imposta TERM su xterm-color (versioni precedenti alla 10.7) o xterm-256color (Lion 10.7 e versioni successive), entrambi supportati clear.
Chris Page

@ChrisPage Quanto spesso accade quando si avvia Terminal?
Daniel Beck

@DanielBeck Non capisco la tua domanda. A meno che l'utente non abbia personalizzato l'impostazione di preferenza "Dichiara terminale come" per modificare il valore su cui Terminale imposta TERM, sarà l'impostazione predefinita, xterm-256color (o xterm-color prima della 10.7). Il terminale imposta sempre TERM sul valore "Dichiara terminale come" quando si crea una sessione di terminale.
Chris Page
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.