亦余心之所善兮,虽九死其犹未悔。这篇文章主要讲述linux之history命令相关的知识,希望能为你提供帮助。
命令语法
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
命令功能
- 显示历史列表。
- 操作历史列表。
-a将当前内存的历史记录追加(append)到历史文件中
-n从历史文件中读取当前内存记录里未读取的行输出
-r从历史文件中读取所有记录附加到内存历史记录
-w 从内存历史中读取数据覆盖到历史记录文件中,可以指定文件保存记录
-p将参数输出为列表,但不保存
-s将参数保存成命令历史记录中,可以以此伪造命令记录
命令参数
- n:可选,只列出最近的 n 条记录。
- filename:可选,表示历史文件;默认调用顺序为
filename
、环境变量HISTFILE
、~/.bash_history
。
使用 history 命令显示最近使用的 10 条历史命令
>
history 10
清空历史记录
>
history -c
通过修改环境变量来控制history的保存属性
$HISTSIZE
历史记录最大条数$HISTFILE
历史记录存放文件$HISTFILESIZE
历史文件条目最大数$HISTTIMEFORMAT="%F %T"
在命令历史显示时输出时间等格式$HISTIGNORE="str1; str2; str3*"
表示不记录str1、str2命令和以str3开头的命令
>
vim /etc/bashrc
export HISTTIMEFORMAT=\'%F %T \' #让历史命令记录操作时间
export HISTSIZE=1000000 #设置保存历史命令条数
export HISTFILESIZE=1000000 #设置保存历史命令的文件大小
shopt -s histappend #多个终端同时操作时,避免命令覆盖,采用追加方式
PROMPT_COMMAND=\'history -a\' #实时记录历史命令,防止丢失>
source /etc/bashrc
把操作过的命令保存到文件
方法1
vim /etc/bashrc
export HISTORY_FILE=/var/.history/date +\'%y-%m-%d\'.log #自定义历史命令保存文件
export PROMPT_COMMAND=\' { date "+%Y-%m-%d %T - USER:$USER IP:$SSH_CLIENT PS:$SSH_TTY - $(history 1 | { read x cmd;
echo "$cmd";
})";
} >
>
$HISTORY_FILE\'
方法2
>
vim /etc/bashrc
export PROMPT_COMMAND=\'history -a { command=$(history 1 | { read x y;
echo $y;
} );
logger -p local1.notice -t bash -i "user=$USER,ppid=$PPID,from=$SSH_CLIENT,pwd=$PWD,command:$command " }\'>
vim /etc/syslog.conf
local1.notice /var/log/cmd.log
【linux之history命令】原文链接:https://rumenz.com/rumenbiji/linux-history.html
微信公众号:入门小站
推荐阅读
- Linux 学习 14
- Windows 11今日正式推送,文末附下载链接
- CentOS 7.9使用Nginx的stream模块实现内网端口转发
- linux之man命令
- 数据展示_2021排列五演算数据微信展示:G4441G
- linux时间格式化命令
- 是否有针对og(type,og:local等的WordPress函数())
- 有没有办法将UL子菜单包装为div()
- 有没有一种方法可以在WordPress中设置add_menu_page()的样式()