linux查询之前的命令 linux如何查询历史命令( 五 )


-H:打印每列的标题
users命令: 打印当前登录的用户 , 从上面可以看到我自己从不同主机同时登录,所以下面显示2次 。
2、查看命令历史
每个用户的命令历史记录保存在 ~/.bash_history 文件里 , 
或者在终端输入: history
要想再执行哪条,使用 !96重新执行该条命令 。
3、last命令查看用户登录历史
此命令会读取 /var/log/wtmp文件;/var/log/btmp可以显示远程登陆信息 。
last默认打印所有用户的登陆信息 。
如果想打印某个用户的登陆信息,可以使用
last 用户名
一些选项:
(1)-x:显示系统开关机以及执行等级信息
(2)-a:将登陆ip显示在最后一行
(3)-d:将IP地址转换为主机名
(4)-t:查看指定时间的用户登录历史
例如: 查看axing在
axing@ax:~$ last axing -a -t 20190201160000
4、lastlog命令查看所有用户最近一次登录历史
读取/var/log/lastlog文件;用户排列顺序按照/etc/passwd中的顺序
一些选项:
(1) -u:查看某用户的最后一次登录记录
比如: lastlog -u axing
(2) -t:查看最近几天之内的用户登录历史
比如: lastlog -t 1
查看最近1天之内的登陆历史
(3) -b:查看指定天数之前的用户登录历史
例如: lastlog -b 60
查看60天之前的用户登录历史
5、ac命令
根据/var/log/wtmp文件中的登陆和退出时间报告用户连接的时间(小时),默认输出报告总时间
需要安装:
(1)-p:显示每个用户的连接时间
(2)-d:显示每天的连接时间
(3)-y:显示年份,和-d配合使用
1.什么命令可以查看用户之前输入的所有命令?如果要更改配置文件将一、查看Linux系统的历史记录指令
1、 使用w命令查看登录用户正在使用的进程信息
w命令用于显示已经登录系统的用户的名称,以及他们正在做的事 。该命令所使用的信息来源于/var/run/utmp文件 。w命令输出的信息包括:
? 用户名称
? 用户的机器名称或tty号
? 远程主机地址
? 用户登录系统的时间
? 空闲时间(作用不大)
? 附加到tty(终端)的进程所用的时间(JCPU时间)
? 当前进程所用时间(PCPU时间)
? 用户当前正在使用的命令
Exampl:
?
此外,可以使用who am i查看使用该命令的用户及进程,使用who查看所有登录用户进程信息,这些查看命令大同小异;
2、使用pkill强制退出登录的用户
使用pkill可以结束当前登录用户的进程,从而强制退出用户登录,具体使用可以结合w命令;
首先:使用w查看当前登录的用户,注意TTY所示登录进程终端号
其次:使用pkill –9 -t pts/1 结束pts/1进程所对应用户登录(可根据FROM的IP地址或主机号来判断)
3、使用history指令查看历史用户操作指令
使用完W指令查看用户的操作进程后 , 使用history指令可以看到以往的用户操作指令 。
History使用参数
[neusoftadmin@server]# history [n] **:数字,要列出最近的 n 笔命令列表
[neusoftadmin@server]# history [-c] **:将目前的shell中的所有 history 内容全部消除
[neusoftadmin@server]# history [-raw] histfiles
-a :将目前新增的history 指令新增入 histfiles 中,若没有加 histfiles,
则预设写入 ~/.bash_history
-r :将 histfiles 的内容读到目前这个 shell 的 history 记忆中
-w :将目前的 history 记忆内容写入 histfiles 。
?
备注:
Linux系统当你在shell(控制台)中输入并执行命令时 , shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中 。默认保存1000条,你也可以更改这个值 。

推荐阅读