linux查看输入的命令 linux查看键盘输入( 二 )


3,nl:显示的时候输出行号;
4,more:一页一页的显示文件内容;
5,less与more类似,但它可以向前翻页;
6,head:只看前几行;
7,tail:只看最后几行;
8 , od:以二进制的方式读取文件 。
9,vi和vim作为编辑器 , 也可以打开文件查看内容 。
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条,你也可以更改这个值 。
如果你键入 history, history会向你显示你所使用的前1000个历史命令,并且给它们编了号,你会看到一个用数字编号的列表快速从屏幕上卷过 。你可能不需要查看1000个命令中的所有项目, 当然你也可以加入数字来列出最近的 n 笔命令列表 。
linux中history命令不仅仅让我们可以查询历史命令而已. 我们还可以利用相关的功能来帮我们执行命令 。
二、查看所有登录用户的操作历史的代码
通过在/etc/profile里面加入以下代码就可以实现:
**#this script records log of user,and records IP address .**
PS1="`whoami`@`hostname`:"'[$PWD]'
history
USER_IP=`who -u am i 2/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
if [ ! -d /tmp/Iprecords ]
then
mkdir /tmp/Iprecords
chmod 777 /tmp/Iprecords
fi
if [ ! -d /tmp/Iprecords/${LOGNAME} ]
then
mkdir /tmp/Iprecords/${LOGNAME}
chmod 300 /tmp/Iprecords/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date "+%Y-%m-%d_%H:%M:%S"`
export HISTFILE="/tmp/Iprecords/${LOGNAME}/${USER_IP} Iprecords.$DT"
chmod 600 /tmp/Iprecords/${LOGNAME}/*Iprecords* 2/dev/null

推荐阅读