私が欲しいのは、変数を含むURLをサーバーに送信することです。サーバーは、ワークステーションへのログインとログアウトのタイミングに基づいて、誰かがいつ存在するかを追跡します。
com.Apple.loginwindow
のLoginHook
を「/Users/Username/Desktop/script.sh」に設定してみました。 script.sh
は、ターミナルから自分で実行すると機能しますが、LoginHook
からは実行されません。
スクリプトは以下を実行します。ここで、$USER
は現在ログインしているユーザーの名前である必要があります。
curl -kd "author=$USER&type=inout&message=in" https://some.server.com/timetrack
OS Xのログイン/ログアウト時にスクリプトを実行する方法 で説明されているようにLoginHook
とLogoutHook
を使用するのが、おそらく最も簡単なアプローチです。非推奨と見なされますが、10.8まで機能し、それを超えても機能する可能性があります。
スクリプトに正しい hashbang があることを確認して、起動プロセスがスクリプトの実行方法を認識できるようにします。結局のところ、スクリプトはRubyからPythonまたは単にBashまでのいずれかです。
したがって、たとえば:
Sudo defaults write com.Apple.loginwindow LoginHook /usr/local/bin/curl.sh
そして/usr/local/bin/curl.sh
は:
#!/bin/bash
curl -kd "author=${1}&type=inout&message=in" https://some.server.com/timetrack
ログインしているユーザーにアクセスするには、$1
の代わりに$USER
を使用する必要があります。後者は実際のシェル環境にのみ存在する変数であり、ログインスクリプトを使用する場合は存在しません。 。