![如何打印上次登录时间?](https://linux22.com/image/47785/%E5%A6%82%E4%BD%95%E6%89%93%E5%8D%B0%E4%B8%8A%E6%AC%A1%E7%99%BB%E5%BD%95%E6%97%B6%E9%97%B4%EF%BC%9F.png)
我想知道如何在.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 行,并在登录过程中报告用户上次登录的情况。此后,直到下次登录时才会再次出现。