"who am I" 在 "sudo su -i" 之后总是在 ksh 中显示真实用户的登录日期时间

"who am I" after "sudo su -i" always displays the real user's login datetime in ksh

我需要将真实用户和实时时间记录到历史列表中。为此,我使用 trap 'who am i|read -s' debug,但它不记录实时时间。以下是您可以验证的步骤。

  1. 在 2015 年 10 月 8 日 LINUX 上以 byksk0 身份登录我的个人帐户 10:38;
  2. 运行 sudo su - wsadmin
  3. 运行who am i,它returns:

    byksk0   pts/0        2015-10-08 10:38 (255.255.255.0)
    
  4. Re运行 who am i, 它总是 returns:

    byksk0   pts/0        2015-10-08 10:38 (255.255.255.0)
    

    无论 sudo su - 命令后 运行 多长时间。

在wsadmin下执行命令是否可以实时获取?

"who" 命令 returns 登录时间,而不是执行最后一条命令或类似命令的时间。 要获取时间戳:使用 "date" 命令。

编辑:

如果你想在一行中:

who am i | awk '{printf "%s ", }' && date

编辑:

尝试预测下一个问题: Date 还支持格式化它输出的日期和时间,例如:

$ who am i | awk '{printf "%s ", }' && date "+%Y-%m-%d %H:%M:%S" swa66 2015-10-08 21:20:34