Linux 入门篇第七章

Linux 入门篇第七章

知识回顾

  • 上一章主要讲了帮助,这一节继续我们的基础

命令行历史

  • 每次重复去敲一个命令比方麻烦,短还好说,长的话就浪费时间
[root@CentOS7 app]# history   列出命令历史 他是依赖于shell类型
    1  ifconfig
    2  init 3
    3  clear
    4  ls
    5  clear
    6  lsblk
    7  claer
    8  clear
    9  ls
   10  clear
   11  ls
   12  lsblk
   13  pwd
   14  hostname
   15  pwd

如果机器出问题了,你可以查看历史看执行错了什么命令
你还可以拿他来执行一条命令

[root@CentOS7 app]# !1  命令在第几个就输入几,记住是小写哦,看编号就可以了
ifconfig
enp0s3: flags=4163  mtu 1500
        inet 11.11.11.151  netmask 255.255.255.0  broadcast 11.11.11.255
        inet6 fe80::983f:764b:b0f2:d045  prefixlen 64  scopeid 0x20
        ether 08:00:27:06:09:bc  txqueuelen 1000  (Ethernet)
        RX packets 8941  bytes 1114727 (1.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5822  bytes 903304 (882.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


 每一个命令执行以后,命令会放到一个文本里面,可以用以下命令查看
[root@CentOS7 ~]# cat .bash_history   这个文件可以里面可以查看

如果把他这个文件里面东西删除了就没有历史了,每个用户都有自己的历史
root是root的历史,普通用户是普通用户的历史

如果一个命令执行一次,按TAB键可以自动输入上一次执行过的命令,还有一个办法

[root@CentOS7 ~]# hostname        
CentOS7.3
[root@CentOS7 ~]# !!   可以用这个办法    区分大小写
hostname
CentOS7.3
有些命令不能重复执行,切记如删除还有一个办法就是

[root@CentOS7 ~]# !86
ls
anaconda-ks.cfg  Desktop  Documents  Downloads  initial-setup-ks.cfg  Music  Pictures  Public  Templates  Videos

还有一个快捷键,这个他不执行,只是列出来,你还可以自己改
Ctrl+p 


还有一个好用的命令:
[root@CentOS7 ~]# ls  
anaconda-ks.cfg  Desktop  Documents  Downloads  initial-setup-ks.cfg  Music  Pictures  Public  Templates  Videos
我上面先执行了一个ls命令,然后我在一个感叹号,在一个l就可以搜索到执行过的ls,这个命令慎用,有很大危险性,比如说有一个很长的命令你可以用用少用
[root@CentOS7 ~]# !l
ls  
anaconda-ks.cfg  Desktop  Documents  Downloads  initial-setup-ks.cfg  Music  Pictures  Public  Templates  Videos



  • 接下来说说下令行历史
    • string 重复前一个以“string”开头的命令
    • !?string 重复前一个包含string的命令
    • !string:p 仅打印命令历史,而不执行
    • ! (上一条命令的最后一个参数)的内容
    • !:p 打印输出 !(上一条命令的所有参数)的内容
    • ^string 删除上一条命令中的第一个string
    • string1string2 将上一条命令中的第一个string1替换为string2
    • !:gs/string1/string2 将上一条命令中所有的string1都替换为 string2

history 命令

  • history [-c] [-d offset] [n]
  • history -anrw [filename]
    • history -ps arg [arg...]
    • -c: 清空命令历史
    • -d offset: 删除历史中指定的第offset个命令
    • n: 显示最近的n条历史
    • -a: 追加本次会话新执行的命令历史列表至历史文件
    • -n: 读历史文件中未读过的行到历史列表
    • -r: 读历史文件附加到历史列表
    • -w: 保存历史列表到指定的历史文件
    • -p: 展开历史参数成多行,但不存在历史列表中
    • -s: 展开历史参数成一行,附加在历史列表后,也就是伪造历史

你可能感兴趣的:(Linux 入门篇第七章)