码迷,mamicode.com
首页 > 系统相关 > 详细

linux bash基础特性

时间:2019-12-15 10:41:13      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:info   删除   sys   命令记录   获得   sock   图片   soc   ace   

使用history命令,取得命令历史,当bash进程结束后,会把命令历史存放到文件中,下次开机还能看到命令历史。

  • 定制history:通过设置环境变量,来定制history

    • 环境变量$HISTSIZE:默认值是1000,也就是最多存1000条命令。

    • 环境变量$HISTFILE:默认值是/home/登录用户/.bash_history。root用户是/root/.bash_history。bash进程退出后,把内存里的命令历史存放到此文件中。

    • 环境变量$HISTFILESIZE:默认值是1000。命令历史文件的大小。

    • 环境变量$HISTCONTROL:默认值是ignoredups。忽略重复的命令。

      • ignorespace:忽略以空格开头的命令。当不想让命令记录到history中时,使用此技巧。
      • ignoreboth:忽略以空格开头的命令,忽略重复的命令。
    • 修改环境变量的方法

      $ HISTCONTROL=ignoreboth
  • 语法:history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]

    • -c:清空全部历史
    • -d offset:删除指定位置的历史
    • -a:只把在这个会话里用过的命令,追加保存到文件$HISTFILE中
    • -r:加载文件$HISTFILE里的内容到history list内存中。
    • -w:把history list内存中的所有命令,都追加到文件$HISTFILE中
    • n:显示最后n条命令历史。
  • 调用历史命令!

    • !n:执行指定n处的命令
    • !!:执行上一次命令
    • !STRING:执行最近一个以STRING开头的命令。
  • 获得上一次命令里的最后一个参数

    • Esc .

    • Alt .

    • !$

      # ls /etc/systemd/system/sysinit.target.wants/
      dmraid-activation.service  lvm2-monitor.service      rhel-import-state.service
      iscsi.service              multipathd.service        rhel-loadmodules.service
      lvm2-lvmetad.socket        rhel-autorelabel.service
      lvm2-lvmpolld.socket       rhel-domainname.service
      # cd !$
      cd /etc/systemd/system/sysinit.target.wants/

c/c++ 学习互助QQ群:877684253

技术图片

本人微信:xiaoshitou5854

linux bash基础特性

标签:info   删除   sys   命令记录   获得   sock   图片   soc   ace   

原文地址:https://www.cnblogs.com/xiaoshiwang/p/12041829.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!