关于命令历史-->history
1.与之相关的环境变量:HISTSIZE,HISTFILE-->~/.bash_history,HISTFILESIZE,HISTCONTROL,HISTTIMEFORMAT
HISTSIZE-->记录当前shell进程下命令历史的条数默认大小为1000
HISTFILE-->可以用来设置保存历史命令文件的位置默认为~/.bash_history
HISTFILESIZE-->可以设置历史文件能够保存历史命令的条数默认1000
HISTCONTROL-->控制命令历史的记录方式共有3种方式分别为
ignoredups(忽略重复历史命令重复是指连续且重复),
ignorespace(忽略以空白字符开头的),
ignoreboth(上两种都忽略)默认为ignoredups
HISTTIMEFORMAT-->查看命令历史的记录时间
设置对所有shell用户有效编辑/etc/profile做如下设置,在HISTSIZE下添加一行HISTTIMEFORMAT="%F %T "
NOTE:
bash shell应该保存少量的命令,并且在每次用户注销时都把这些历史命令删除。
第一步:
“/etc/profile”文件中的“HISTFILESIZE”和“HISTSIZE”行确定所有用户的“.bash_history”文件中能保
存的旧命令条数。强烈建议把把“/etc/profile”文件中的“HISTFILESIZE”和“HISTSIZE”行的值设为一个较小的数,比如
30。编辑profile文件(vi /etc/profile),把下面这行改为:
HISTFILESIZE=30
HISTSIZE=30
这表示每个用户的“.bash_history”文件只能保存30条旧命令。
第二步:
网管还应该在"/etc/skel/.bash_logout" 文件中添加下面这行"rm -f $HOME/.bash_history" 。这样,当用户每次注销时,“.bash_history”文件都会被删除.
2.history命令的使用
该命令用于显示和操作命令历史的列表;
常用选项:
-c-->清除所有记录的历史命令
-d offset-->清除指定第offset条历史命令记录
-a-->将history中记录的历史命令添加到命令历史的文件中默认在~/.bash_history中
-r-->从历史文件中读取记录的历史命令并追加到history中
[n]-->显示最近的n条history中记录的历史命令
关于命令补全与路径补全
bash中输入命令和路径是按下tab键会自动补全按两次tab会查找与之相匹配的