如何提取root用户的登录日期时间?Linux Shell脚本求助
提取root用户登录日期时间的Shell方案
简化命令直接提取
不用多次grep,用awk一步完成过滤和提取,确保输出仅为目标日期时间:
lslogins | awk '/^root/ {print $NF}'
/^root/精准匹配以root开头的行,避免误匹配其他含root字符串的用户$NF表示该行的最后一列,对应lslogins输出里的LAST_LOGIN字段
更可靠的指定列提取(适配不同系统)
如果担心不同系统lslogins的列顺序有差异,可以指定只输出需要的字段再提取:
lslogins -o USER,LAST_LOGIN | awk '/^root/ {print $2}'
-o USER,LAST_LOGIN让lslogins仅输出用户名和最后登录时间两列,规避列位置变化的问题print $2提取第二列的登录时间
封装成可复用脚本
把命令写成脚本,方便整合到其他工具:
#!/bin/bash # 获取root用户最后登录日期时间 lslogins -o USER,LAST_LOGIN | awk '/^root/ {print $2}'
给脚本添加执行权限后直接运行,输出只会是目标日期时间,无多余内容,可直接被其他工具调用。
内容的提问来源于stack exchange,提问作者Gladnick
相关产品推荐
相关产品推荐

