百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

linux之history使用技巧

ahcoder 2025-05-14 11:32 2 浏览

在/etc/bashrc配置history的变量

> vim /etc/bashrc
export HISTTIMEFORMAT="%Y-%m-%d:"
> source /etc/bashrc
> history
1006  2021-05-19:vim /etc/bashrc 
1007  2021-05-19:history 
1008  2021-05-19:source /etc/bashrc 
1009  2021-05-19:history 

或者

> vim /etc/bashrc
export HISTTIMEFORMAT="%F %T:"
> source /etc/bashrc
> history
1009  2021-05-19 22:35:24:history 
1010  2021-05-19 22:36:40:vim /etc/bashrc 
1011  2021-05-19 22:37:02:source /etc/bashrc 
1012  2021-05-19 22:37:07:history 

或者

> vim /etc/bashrc
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S `whoami`"
> source /etc/bashrc
> history
1012  2021-05-19 22:37:07 root:history 
1013  2021-05-19 22:37:41 root:vim /etc/bashrc 
1014  2021-05-19 22:38:06 root:source /etc/bashrc 
1015  2021-05-19 22:38:08 root:history 

或者

> vim /etc/bashrc
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S `who am i | awk '{print $1,$5}'`"
> source /etc/bashrc
> history
1021  2021-05-19 22:42:59 root (171.43.176.3):history 
1022  2021-05-19 22:43:03 root (171.43.176.3):source /etc/bashrc 
1023  2021-05-19 22:43:06 root (171.43.176.3):vim /etc/bashrc 
1024  2021-05-19 22:43:19 root (171.43.176.3):source /etc/bashrc 
1025  2021-05-19 22:43:21 root (171.43.176.3):history 

history设置历史命令记录数

> vim /etc/bashrc
# 保存1000条记录
export HISTSIZE=1000
> source /etc/bashrc

指定不同终端执行的命令都存储在同一个文件中

> vim /etc/bashrc
export HISTFILE=/var/log/.cmd_log
> source /etc/bashrc

忽略重复命令

> vim /etc/bashrc
export HISTCONTROL=ignoredups  
> source /etc/bashrc

多个终端同时操作时,避免命令覆盖,采用追加方式

> shopt -s histappend

实时写入

实际上history的历史命令是写入.bash_history 中的。 ~/.bash_history 记录的是前一次登陆所运行过的命令,而本次登陆所运行的命令都被缓存在内存中,当退出系统后,本次的命令记忆才会记录到 .bash_history 中。

> PROMPT_COMMAND='history -a'

完全清除命令执行操作的历史记录

  • 清理历史记录(只是清理了表层,可在.bash_history找到回)
> history
  • 清理记录历史的记录文件内容
> echo " " > .bash_history 

关于history的小技巧

  • !number 执行第几条命令
  • !command 从最近的命令查到以command开头的命令执行
  • !! 执行上一条

相关推荐

解决 MySQL 8.0 一直拒绝 root 登录问题

Accessdeniedforuser'root'@'localhost'(usingpassword:YES)这个错误在网上搜一下,能看到非常多的此类...

Linux:实现Hadoop集群Master无密码登录

以下所介绍的安装方式都是在线安装方式,如果你需要连网请参考:Linux:宿主机通过桥接方式连接的VMware内部Linux14.04虚拟机(静态IP)实现上网方案环境:OS:LinuxUbuntu1...

「Linux基础」开启SSH服务教程

简介SSH服务,全称为SecureShell,是一种提供在网络环境中安全远程访问服务。SSH服务通过加密通信、身份验证和数据完整性保护,使用户能够安全地远程登录服务器、传输文件或执行命令,是替代传统...

Linux远程shell登录出现bash-4.2#问题

出现以上问题的原因是/root目录下丢失了.bashrc和.bash_profile文件/etc/skel/.bash_profile和/etc/skel/.bashrc的文件复制到/root下即可命...

Linux安全之SSH 密钥创建及密钥登录

#2023度创作挑战#创建秘钥1.首先进入Linux系统的用户目录下的.ssh目录下,root用户是/root/.ssh,普通用户是/home/您的用户名/.ssh,我们以root用户为例:cd.s...

Linux 如何实现无密码登录

1在自己的Linux系统上生成SSH密钥和公钥打开终端,使用下面的ssh-keygen来生成RSA密钥和公钥.-t表示type,就是说要生成RSA加密的钥匙.>#ssh-keygen-...

索尼PS5 DualSense手柄驱动即将登陆Linux 5.12 也可支持Android

对于2020年这样一个糟糕的年份,众多开源领域成就中的一项是索尼承担了他们HID驱动的"官方"维护工作,在圣诞节之前,他们发布了一个官方的PlayStation5DualSense开源控制器驱动...

Linux用户终于能直接观看Netflix流媒体节目了

还记得我们说过Netflix流媒体节目不久将登陆Linux平台吗?(也就是说,Linux用户不需要再通过各种繁琐的解决方案就能观看Netflix视频了。)现在就可以了,不过有几件事需要提醒大家一下…首...

图兰木马登陆Linux

“图兰”(Turla)一种难以辨别的木马已经困扰Windows系统多年,现如今至少有两个Linux下的变种,卡巴斯基实验室研究人员说LinuxTurla通过运行远程命令进行攻击,并不需要提...

Linux 下用 SSH 登录远程服务器后把远程服务器文件传本地电脑

在Linux下,使用SSH命令登录远程服务器后,可以使用scp命令将远程服务器上的文件复制到本地电脑。以下是scp命令的基本用法:scp[用户名]@[远程服务器地址]:[远程文件路径][本地存放路...

解决最美国产linux系统Deepin20不能登录官方论坛

我们都知道现在的国产的LINUX系统能接地气的要算Deepin系统了,而现在Deepin系统最近的版本号是Deepin20系统,这个号称最美国产系统却遇到一个小问题就是安装了Chrome软件后不能登录...

Docker Desktop 登陆微软商店,开发者神器又升级了!

DockerDesktop4.41版本发布,这次更新给Windows开发者带来了三大实用功能,简单来说就是:AI模型本地跑、微软商店直接装、开发测试一条龙。先说最酷的——AI模型在Wi...

PowerShell开源 Windows管理技术登陆Linux

【天极网IT新闻频道】微软近日宣布开源旗下的PowerShell脚本程序,支持在Linux平台上执行。目前该脚本程序支持Ubuntu、CentOS、RedHat和MacOSX等多平台,并已在Gi...

免密码ssh登录到linux系统

1、产生rsa密钥对:在win10,win11下的命令提示符模式直接输入ssh-keygen-trsa敲3次回车在默认位置产生id_rsa(私钥),id_rsa.pub(公钥),注意位置,默认在用...

PowerShell登录远程Linux系统

要从PowerShell登录远程Linux系统,您可以使用OpenSSHforWindows。以下是一些步骤:在Windows上安装OpenSSHforWindows。您可以在Microsof...