.bashrc
端末に他のユーザーがログインしているときにそのユーザーの最後のログイン時間を出力するようにファイルに設定する方法を知りたいです。who
または、使用について知っていますが、よりカスタマイズしてlast
フォーマットすることができ、ログインごとに一度だけ実行され、好ましくは次の形式で表示されることを望みます。
last login time [ 2015-02-13 @ 3:50:00 AM ]
user@host /path/dir/here $
bashプロンプトの前にターミナル画面に印刷し、可能であれば時間と日付スタンプの色を設定してフォーマットします。カスタムbashプロンプト出力を実装する方法は?
答え1
(参考までに形式はまったく同じではありません。)
ll=$(last -1 -R $USER | head -1 | cut -c 20-)
export PS1="last login time [$ll]"'\n\h:\W\$ '
last
編集:情報を一度だけ印刷したい場合(賢明なアイデア)
ll=$(last -1 -R $USER | head -1 | cut -c 20-)
echo "last login time [$ll]" # adjust to your login messages, fortunes, etc
export PS1='\n\h:\W\$ ' # replace by your favorite prompt
答え2
/etc/profileファイルに次の行を入れてください...
echo "your last login: `last -1 -R $USER` "
これは結果を1行に制限し、ログインプロセス中にユーザーの最後のログインを報告します。それ以降は、次のログインまで再表示されません。