Silencing “last login” message on macOS terminals
I got annoyed by the “Last login: Fri Aug 19: 11:23:33” messages I saw in Terminal.app when opening new tabs (in spite of seeing them daily for years). Here’s how I solved it.
It turns out this behavior used to be handled by ~/.hushlogin
, which I
already have in place to surpress /etc/motd
output. Around macOS Yosemite
that behavior changed so it only works in new windows, not new tabs.
I found this SO post that outlines what the cause is and how one can tell Terminal.app to use a custom login command.
In Terminal.app preferences, General, I set “Shells open with” to “Command” with:
/usr/bin/login -fpql priddle /bin/zsh -l
I’m mainly documenting this here so I remember what I did if I need to revert or apply it to other Macs. Time will tell if I regret it 😅
Update 2023-06-30: This might have been a bug on Monterey. On Ventura, it
seems like just creating ~/.hushlogin
works again.