您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Linux下history命令详解

添加时间:2010-11-12  添加: admin 

如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率。本文将通过实例的方式向你介绍 history 命令的 15 个用法。

  使用 HISTTIMEFORMAT 显示时间戳

  当你从命令行执行 history 命令后,通常只会显示已执行命令的序号和命令本身。如果你想要查看命令历史的时间戳,那么可以执行:

  # export HISTTIMEFORMAT='%F %T '

  # history | more

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

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

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

  4 2008-08-05 19:02:39 cat /etc/redhat-release

  注意:这个功能只能用在当 HISTTIMEFORMAT 这个环境变量被设置之后,之后的那些新执行的 bash 命令才会被打上正确的时间戳。在此之前的所有命令,都将会显示成设置 HISTTIMEFORMAT 变量的时间。[感谢 NightOwl 读者补充]

  使用 Ctrl+R 搜索历史

  Ctrl+R 是我经常使用的一个快捷键。此快捷键让你对命令历史进行搜索,对于想要重复执行某个命令的时候非常有用。当找到命令后,通常再按回车键就可以执行该命令。如果想对找到的命令进行调整后再执行,则可以按一下左或右方向键。

  # [Press Ctrl+R from the command prompt, which will display the reverse-i-search prompt]

  (reverse-i-search)`red‘: cat /etc/redhat-release

  [Note: Press enter when you see your command, which will execute the command from the history]

  # cat /etc/redhat-release

  Fedora release 9 (Sulphur)

  快速重复执行上一条命令

  有 4 种方法可以重复执行上一条命令:

  使用上方向键,并回车执行。

  按 !! 并回车执行。

  输入 !-1 并回车执行。

  按 Ctrl+P 并回车执行。

  从命令历史中执行一个指定的命令

  在下面的例子中,如果你想重复执行第 4 条命令,那么可以执行 !4:

  # history | more

  1 service network restart

  2 exit

  3 id

  4 cat /etc/redhat-release

  # !4

  cat /etc/redhat-release

  Fedora release 9 (Sulphur)

  通过指定关键字来执行以前的命令

  在下面的例子,输入 !ps 并回车,将执行以 ps 打头的命令:

  # !ps

  ps aux | grep yp

  root 16947 0.0 0.1 36516 1264 ? Sl 13:10 0:00 ypbind

  root 17503 0.0 0.0 4124 740 pts/0 S+ 19:19 0:00 grep yp

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

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

  # vi ~/.bash_profile

  HISTSIZE=450

  HISTFILESIZE=450

  使用 HISTFILE 更改历史文件名称

  默认情况下,命令历史存储在 ~/.bash_history 文件中。添加下列内容到 .bash_profile 文件并重新登录 bash shell,将使用 .commandline_warrior 来存储命令历史:

  # vi ~/.bash_profile

  HISTFILE=/root/.commandline_warrior

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

  在下面的例子中,pwd 命令被连续执行了三次。执行 history 后你会看到三条重复的条目。要剔除这些重复的条目,你可以将 HISTCONTROL 设置为 ignoredups:

  # pwd

  # pwd

  # pwd

  # history | tail -4

  44 pwd

  45 pwd

  46 pwd [Note that there are three pwd commands in history, after executing pwd 3 times as shown above]

  47 history | tail -4

  # export HISTCONTROL=ignoredups

  # pwd

  # pwd

  # pwd

  # history | tail -3

  56 export HISTCONTROL=ignoredups

  57 pwd [Note that there is only one pwd command in the history, even after executing pwd 3 times as shown above]

  58 history | tail -4

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

  上例中的 ignoredups 只能剔除连续的重复条目。要清除整个命令历史中的重复条目,可以将 HISTCON

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站