资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

linux查看输入过命令 linux查看执行命令

linux怎么样显示命令历史后又显示命令的输入时间

linux的bash内部命令history就可以显示命令行的命令历史,默认环境执行 history

创新互联是专业的二道江网站建设公司,二道江接单;提供网站设计、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行二道江网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

命令后,通常只会显示已执行命令的序号和命令本身。

如果想要查看命令历史的时间戳,那么可以执行:

# export HISTTIMEFORMAT='%F %T '

# history | more

1 2008-08-05 19:02:39 service work restart

2 2008-08-05 19:02:39 exit

3 2008-08-05 19:02:39 id

这样显示的格式就变成,序号 - 时间 - 命令行。

history的其他的一些基本功能:

1、使用 HISTSIZE 控制历史命令记录的总行数

将下面两行内容追加到 .bash_profile 文件并重新登录 bash shell,命令历史的记录数将变成 450

条:

# vi ~/.bash_profile

HISTSIZE=450

HISTFILESIZE=450

2、使用 HISTFILE 更改历史文件名称

默认情况下,命令历史存储在 ~/.bash_history 文件中。

添加下列内容到 .bash_profile 文件并重新登录

bash shell,将使用 mandline_warrior 来存储命令历史:

# vi ~/.bash_profile

HISTFILE=/root/mandline_warrior

3、使用 HISTCONTROL 从命令历史中剔除连续重复的条目

在下面的例子中,pwd 命令被连续执行了三次。

执行 history 后会看到三条重复的条目。

要剔除这些重复的条目,可以将

HISTCONTROL 设置为 ignoredups:

# export HISTCONTROL=ignoredups

4、使用 HISTCONTROL 清除整个命令历史中的重复条目

上例中的 ignoredups 只能剔除连续的重复条目。

要清除整个命令历史中的重复条目,可以将 HISTCONTROL 设置成

erasedups:

# export HISTCONTROL=erasedups

5、使用 -c 选项清除所有的命令历史

如果你想清除所有的命令历史,可以执行:

# history -c

6、使用 HISTIGNORE 忽略历史中的特定命令

下面的例子,将忽略 pwd、ls、ls -ltr 等命令:

# export HISTIGNORE=”pwd:ls:ls -ltr:”

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

[neusoftadmin@server]# source /etc/profile ********执行脚本

重启之后,上面脚本在系统的/tmp新建个Iprecords目录,记录所有登陆过系统的用户和IP地址(文件名),每当用户登录/退出会创建相应的文件,该文件保存这段用户登录时期内操作历史,可以用这个方法来监测系统的安全性。

linux历史记录显示没有自己输入过的

1.linux如何查看用户所有的历史操作记录

1、使用w命令查看登录用户正在使用的进程信息,w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括:用户名称

用户的机器名称或tty号

远程主机地址

用户登录系统的时间

空闲时间(作用不大)

附加到tty(终端)的进程所用的时间(JCPU时间)

当前进程所用时间(PCPU时间)

用户当前正在使用的命令

如何查看Linux中各个用户的历史操作命令

1、首先打开Linux直接输入一个history即可。

2、然后如果想执行历史中的某个命令,直接感叹号加行号即可。

3、还可以运用感叹号加命令的起始字符即可调出历史命令。

4、输完了以后按回车你就会看到命令起作用了。

5、然后就会显示Linux中各个用户具体的操作时间和操作,通过以上步骤即可解决查看Linux中各个用户的历史操作命令的问题。

怎么查看linux所有执行过的命令

linux查看过去用过的命令如下;

1、切换到要查看的用户下。

2、运行history命令即可。

cat /那个用户的家目录/.bash_history


文章标题:linux查看输入过命令 linux查看执行命令
文章地址:http://cdkjz.cn/article/hhehjp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220