Visualizza il messaggio del terminale all'accesso
Voglio visualizzare qualcosa come ### this is a test ###quando è aperta una nuova finestra di Terminale (e idealmente, in un modo che può essere disabilitato facilmente). Su Linux questo era semplice; creeresti uno script in /etc/profile.d/cui sarebbe responsabile echodell'invio del messaggio quando viene aperta una nuova sessione di terminale.
Ho giocato con launchd per provare a farlo funzionare ma senza successo. Ho creato un agente /Library/LaunchAgents/org.test.greeting.plistcon il seguente codice (dove il file greeting.sh è responsabile di fare il echo) sperando di ottenere un output quando l'utente accede.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.test.greeting</string>
<key>ProgramArguments</key>
<array>
<string>/Users/test/greeting.sh</string>
</array>
<key>RunAtLoad</key><true/>
</dict>
</plist>
Questo non ha funzionato, poiché il messaggio è perso nell'etere. Tuttavia, so che l'agente funziona correttamente. So che è possibile reindirizzare l'output a un file usando StandardErrorPathe StandardOutPathma quelli non mi sono utili.
Qualcuno sa come farlo funzionare launchd, o forse ha un altro modo per farlo?
Risposte
Mi piace il messaggio del giorno per questo. Come vuole la tradizione ...
me@Mac ~ % echo "Welcome to the University of East Westia" > /tmp/motd
me@Mac ~ % sudo mv /tmp/motd /etc
Nota: / etc / motd viene visualizzato solo in una shell di login, che è tipica di Terminal.app su macOS. Se in genere esegui shell non di login, dovresti gestire la visualizzazione di / etc / motd nei tuoi file punto della shell.
Hai provato a modificare i tuoi dotfile?
Come riferimento, nel mio ~/.zshrcho in cima il comando neofetch. Di per sé, è solo un comando che puoi eseguire dalla tua shell. In questo modo, ogni volta che avvio una nuova finestra o scheda iTerm2 / Terminal ottengo il comando eseguito e lo visualizzo.
Lo stesso può essere fatto scrivendo nella parte superiore del file di configurazione qualcosa come il seguente: echo "### this is a test ###"