Je veux afficher quelque chose comme ### this is a test ###
lorsqu'une nouvelle fenêtre de terminal est ouverte (et idéalement, d'une manière qui peut être désactivée facilement). Sous Linux, c'était très simple : il suffisait de créer un script dans le répertoire /etc/profile.d/
qui serait chargé de echo
-l'envoi du message lors de l'ouverture d'une nouvelle session du terminal.
J'ai joué avec launchd pour essayer de faire fonctionner le système, mais sans succès. J'ai créé un agent dans /Library/LaunchAgents/org.test.greeting.plist
avec le code suivant (où le fichier greeting.sh est responsable de faire le echo
) en espérant obtenir une sortie lorsque l'utilisateur se connecte.
<?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>
Cela n'a pas fonctionné, car le message est perdu dans l'éther. Cependant, je sais que l'agent fonctionne correctement. Je sais qu'il est possible de rediriger la sortie vers un fichier à l'aide de la fonction StandardErrorPath
et StandardOutPath
mais ils ne me sont pas utiles.
Quelqu'un sait-il comment faire pour que cela fonctionne avec launchd
ou peut-être avez-vous un autre moyen de le faire ?