Disattiva "Riapri Windows quando accedi nuovamente" in Mac OS X completamente

Potresti aver notato che quando esci o riavvii Mac OS X, ottieni una finestra di dialogo con una casella di controllo accanto a "Riapri finestre quando accedi nuovamente" che ripristina tutte le finestre e le applicazioni attualmente aperte.

Se non ti piace e sei stanco di deselezionare la casella per non riaprire più le finestre, puoi utilizzare uno script di terze parti per rendere la funzionalità inutile. Per chiarire, ciò che fa è disabilitare completamente la funzione su base costante, indipendentemente dal fatto che la casella di controllo per mantenere le finestre sia selezionata o meno, la finestra non verrà ripristinata.

Anche se questo fa parte della funzione Resume di OS X, questo è diverso rispetto alla disattivazione dell'app Resume completamente o per applicazione, poiché questo ha effetto solo su riavvii e disconnessioni.

Disattivazione "Riapri le finestre quando si effettua il login" rendendolo inutile

Ricorda, questo script disabilita la funzione, ma la finestra di dialogo apparirà comunque. La differenza è con questo script, non importa se la finestra di dialogo è selezionata o meno, Windows e app non verranno ripristinati . Questo è rivolto agli utenti avanzati che si sentono a loro agio con la riga di comando, una sintassi impropria può causare errori o visitare l'URL sbagliato, in modo particolare su ciò che si utilizza. Se non sei sicuro, non procedere. Si tratta di accedere a uno script da un sito Web di terzi, utilizzare a proprio rischio.

Incolla quanto segue in una singola riga all'interno del Terminale e premi Invio:

curl http://pastie.org/pastes/2427953 -L -s -o ~/fixlogin.sh

Quindi, controlla il file per assicurarti che sia ciò che vuoi che contenga:

cat ~/fixlogin.sh

Se il file corrisponde al contenuto dello script di seguito, è possibile eseguirlo con il seguente:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

NOTA: se preferisci creare il tuo file e non usare arricciare per scaricare lo script "fixlogin.sh" da un host remoto chiamato pastie, il file è questo, puoi incollare quanto segue in un documento chiamato "loginfix.sh", rendilo eseguibile con chmod + x ed esegui lo script manualmente:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

Come puoi vedere, lo script cancella tutto all'interno della directory ~ / Library / Preferences / ByHost / dell'utente corrispondente a "com.apple.loginwindow. *"

(Il testo sopra è volutamente piccolo in modo che si adatti a una singola riga)

Quindi eseguirlo con il seguente comando:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

Questo comando scarica uno script, lo inserisce nella posizione appropriata, lo rende eseguibile e quindi rimuove il file temporaneo. Se vi state chiedendo, il contenuto dello script di bash scaricato è il seguente:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

Se si desidera ripristinare il comportamento predefinito di questa funzione di OS X Lion, è sufficiente digitare il seguente comando di scrittura dei valori predefiniti:

sudo defaults delete com.apple.loginwindow LoginHook

E tornerai per poter selezionare il ripristino della finestra in base alla scelta di tale casella di controllo.

Questo piccolo script viene da HexBrain, grazie per aver inviato questo in Mark!