在Linux环境中可以通过方向键的上下按键查看近期键入的命令。但这种方法只能一个一个的查看,其实系统提供了查看所有历史命令的方法。

在终端中输入以下命令查看所有命令:

history

[root@template ~]# history
1 ifconfig
2 vim /etc/ssh/sshd_config
3 /etc/init.d/sshd restart
4 vim /boot/grub/grub.conf
5 vim /etc/selinux/config
6 vim /etc/sysconfig/network-scripts/ifcfg-eth0
7 rm -rf /etc/udev/rules.d/70-persistent-net.rules
8 useradd vsroot
9 echo -e 'vsroot\tALL=(ALL)\tNOPASSWD: ALL' >> /etc/sudoers
10 yum clean all
11 rm -rf /var/log/yum.log
12 rm -rf /var/lib/yum/*
13 rm -rf /root/install.log
14 rm -rf /root/install.log.syslog
15 rm -rf /var/log/anaconda.*

history命令列出了所有已键入的命令,用户所键入的命令都会记录在文件中,该文件保存在当前登录用户的家目录中。

文件名称为:.bash_history,该文件是一个隐藏文件。

历史操作命令的清除:

如果在服务器中干了不好的事情,可以通过“history -c”命令进行清除,那么其他人登录终端时就无法查看历史操作命令了。

但此命令并不会清除保存在文件中的记录,因此需要手动删除.bash_profile文件中的记录。

配置是否记录历史操作命令或记录条数:

在“/etc/profile”配置文件中可以配置是否记录历史操作命令。

vi /etc/profile

[root@CentOS ~]# cat /etc/profile
# /etc/profile # System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc # It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates. pathmunge () {
case ":${PATH}:" in
*:"$1":*)
;;
*)
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
esac
} if [ -x /usr/bin/id ]; then
if [ -z "$EUID" ]; then
# ksh workaround
EUID=`id -u`
UID=`id -ru`
fi
USER="`id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi # Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
else
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
pathmunge /sbin after
fi HOSTNAME=`/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
export HISTCONTROL=ignoreboth
else
export HISTCONTROL=ignoredups
fi export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL # By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
umask 002
else
umask 022
fi for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null 2>&1
fi
fi
done unset i
unset -f pathmunge
[root@CentOS ~]#

在profile配置文件中找到HISTSIZE选项,该配置选项用于配置历史操作命令条数的。

如果将此值置0则不记录历史操作命令。

默认该值为1000,也就是记录最近的1000条命令。

如果需要增大后缩小记录的条数,则修改相应的值即可。

Linux环境下查看历史操作命令及清除方法的更多相关文章

  1. Linux环境下查看历史操作命令及清除方法(history -c)

    在Linux环境中可以通过方向键的上下按键查看近期键入的命令.但这种方法只能一个一个的查看,其实系统提供了查看所有历史命令的方法. 在终端中输入以下命令查看所有命令: history [root@te ...

  2. linux环境下给文件加密/解密的方法

      原文地址:linix环境下给文件加密/解密的方法 作者:oracunix 一. 利用 vim/vi 加密:优点:加密后,如果不知道密码,就看不到明文,包括root用户也看不了:缺点:很明显让别人知 ...

  3. Linux环境下部署开源版“禅道”方法

    1.开源版安装包下载(Linux系统版本查看命令 uname -a) 32位 [root@iZbp~]# wget http://dl.cnezsoft.com/zentao/9.0.1/ZenTao ...

  4. Linux环境下查看线程数的几种方法

    1.cat /proc/${pid}/status 2.pstree -p ${pid} 3.top -p ${pid} 再按H,或者直接输入 top -bH -d 3 -p  ${pid} top ...

  5. [转]Linux环境下查看线程数的几种方法

    1.cat /proc/${pid}/status 2.pstree -p ${pid} 3.top -p ${pid} 再按H,或者直接输入 top -bH -d 3 -p  ${pid} top ...

  6. linux环境下查看tomcat日志

    1.先切换到:cd usr/local/tomcat5/logs 2.tail -f catalina.out 3.这样运行时就可以实时查看运行日志 Ctrl+c 是退出tail命令. alt+E+R ...

  7. 在Linux环境下设置 ora-01031:insufficient privileges解决方法总结

    今天需要使用sys用户处理问题,但是报错上面ora-01031:insufficient privileges. 在网上有很多方法,这个是自己经过测试的方法步骤. 1:首先检查文件sqlnet.ora ...

  8. Linux环境下如何计算CPU占用率【华为云技术分享】

    1.Linux 环境下查看 CPU 信息 1.1.查看 CPU 详细信息 通过 cat /proc/cpuinfo 命令,可以查看 CPU 相关的信息: [root@rh ~]$ cat /proc/ ...

  9. Linux环境下进程的CPU占用率

    阿里云服务器网站:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=qqwovx6h 文字来源:http://www.s ...

随机推荐

  1. 快捷键的记录,Word和PPT的一些常用操作

    1)PPT背景设置:右键->背景->背景填充下的下拉箭头->填充效果->图片-  >选择图片->确定->选择应用或应用全部 2)Word,PPT求和符号怎么打 ...

  2. 使用 Sandcastle 生成代码帮助文档

    使用 Sandcastle可以生成MSDN风格的帮助文档,生成的帮助文档既可以是chm文档,也可以是MS Help 2.x帮助文档. 1 下载并安装Sandcastle Sandcastle下载地址为 ...

  3. .NET技术大系概览 (迄今为止最全的.NET技术栈)

    从2002年的.NET 1.0开始,1.1,2.x,3.x,4.x,每个新版本的.NET都会增加新的技术,生态圈也在不断壮大. AD: 前言 .Net推出13年了,Visual Studio 2015 ...

  4. css3新特性@rgba

    1.rgba也经常在实际应用中使用,它主要是在原来rgb的基础上添加了一透明度.但是他又和opacity又有一些差别,主要体现在对子元素的透明度的影响上. 例如:使用opacity和backgroun ...

  5. 关于PHP学习的各种网站

    http://www.shouce.ren/ 各种开发手册 http://yii2.techbrood.com/guide-upgrade-from-v1.html yii2.0和之前版本的区别htt ...

  6. ssh链接数设置问题

    今天碰到一个问题,脚本执行scp文件拷贝,因为拷贝的服务器很多,所以拷贝脚本的实现是在把拷贝动作转后台执行,结果发现一堆文件拷贝失败.比较有迷惑性的是,拷贝失败的通常是同一个文件夹拷贝到所有服务器时失 ...

  7. C#类和接口、虚方法和抽象方法及值类型和引用类型的区别

    1.C#类和接口的区别接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!而类是负责功能的具体实现!在类中也有抽象类的定义,抽象类与接口的区别在于:抽象类是一个不完全的类,类里面有抽 ...

  8. Android安全开发之UXSS漏洞分析

    0X01 前言 XSS是我们比较熟悉的一种攻击方式,包括存储型XSS.反射型XSS.DOM XSS等,但UXSS(通用型XSS)另外一种不同的漏洞类型,主要体现在漏洞的载体和影响范围上. XSS问题源 ...

  9. 蓝牙BLE实用教程

    蓝牙BLE实用教程 Bluetooth BLE 欢迎使用 小书匠(xiaoshujiang)编辑器,您可以通过 设置 里的修改模板来改变新建文章的内容. 1.蓝牙BLE常见问答 Q: Smart Re ...

  10. hibernate配置文件中的schema="dbo"在MySQL数据库不可用

    把项目的数据库由SQL Server更改为MySQL之后,发现hibernate报错. 问题在于schema="dbo",使用SQL Sever数据库时正常,使用MySQL数据库需 ...