ユーザーのログイン時間とログイン日を知りたいです。 Unixにユーザーのログイン日とログイン時間を提供するコマンドはありますか?エンドユーザーからユーザー名が許可されているシェルスクリプトでこの問題を実行し、ユーザーの可用性を確認したら、そのユーザーのログイン時間とログイン日を別の変数にインポートしてから、「echo」コマンドを使用して表示します。 。
答え1
過去のログインの場合:
last "$USER_NAME"
また、このコマンドはwho
現在のログインを一覧表示します。
ユーザーが最後にログインした日付を見つけると、lastlog -u "$USER_NAME"
Linuxやlastlogin "$USER_NAME"
FreeBSDなどの一部のシステムはその日付を直接提供します。の出力にも使用できますが、finger
簡単に解析できる形式では使用できません。それにもかかわらず、出力で見つけることができますlast
(多くのUNIXバリアントではlast -n 1 "$USER_NAME"
最後のログインが表示されます。そうしないとこれを行うことができますlast "$USER_NAME" | head -n 1
)。最後のログインは、最後のログアウトと一致しない可能性があります(たとえば、ユーザーが長い間ソースから接続を維持し、最近高速なネットワークログインを行いました)。
答え2
Linuxでは、last -R $username | awk '/still logged in/ {print $3,$4,$5,$6}'
ユーザーがログインしていない場合は何も返されません。そうしないと、各アクティブセッションの日付/時刻のリストが返されます。
Lastオプション(ホスト名を抑制)を認識しない他の-R
Unixシステムでは、いくつかの修正が必要です。