本文环境 Centos7

1.历史命令

1.1 在使用linux中熟练的使用历史命令,能给我很多便捷,下面我来总结一些常用的一些历史命令。

a) 执行上一条命令,这个很重要 ,执行上一条命令有四种方法,如下:

[root@CentOS-7-64data]#

[root@CentOS-7-64 data]# ls[a-z] kas kokoa l1234bd l1234bd1dada l12k l12ka l2a

当然这个命令很简单,但是命令很复杂呢?使用 ↑ ,ctrl+p ,!-1 ,!! 这四种方式可以执行上条命令

[root@CentOS-7-64 data]# !!

ls[a-z] kas kokoa l1234bd l1234bd1dada l12k l12ka l2a

[root@CentOS-7-64 data]# ls # 我这里按的是 ctrl+p

[a-z] kas kokoa l1234bd l1234bd1dada l12k l12ka l2a

[root@CentOS-7-64 data]# !-1

ls[a-z] kas kokoa l1234bd l1234bd1dada l12k l12ka l2a

[root@CentOS-7-64 data]# ls# 这里是 ↑ 键

[a-z] kas kokoa l1234bd l1234bd1dada l12k l12ka l2a

[root@CentOS-7-64 data]#

b) 在历史命令中执行最新一条以cat开头的命令,要执行以什么开头的命令,在叹号后面加上你要执行的命令,执行的是最后一条以cat开头的命令          用法  !cat

[root@CentOS-7-64 data]# !cat

catkas

hello world

hello world

[root@CentOS-7-64 data]#

c) 在历史命令中执行包含red的命令,这条命不同于上条,上条是开头,这条是包含,使用方法:

!?red   !?+你要包含的命令

[root@CentOS-7-64 data]# cat /etc/redhat-release

CentOS Linux release7.7.1908(Core)

[root@CentOS-7-64 data]# !?redcat /etc/redhat-release

CentOS Linux release7.7.1908(Core)

[root@CentOS-7-64 data]#

d) 打印以kas开头的命令,只打印不执行  方法  !command:p

[root@CentOS-7-64 data]# !kas:p

kas

e) 执行前一条命令(去除参数)并打印出命令  方法 !:0

[root@CentOS-7-64 data]# catkas

hello world

hello world

[root@CentOS-7-64 data]# !:0kokoacatkokoa

hello china

hello china

[root@CentOS-7-64 data]#

f) 得到前一个命令的第一个参数并打印命令   用法  !:1

[root@CentOS-7-64 data]# catkokoa

hello china

hello china

[root@CentOS-7-64 data]# vim !:1vim kokoa

[root@CentOS-7-64 data]#

g)  要重新调用前一个命令中最后一个参数并打印命令   有几种方法  我就写我常用的  用法 !$  Esc + .  英文点

[root@CentOS-7-64 data]# !grep

grep "hello"kokoa kas

kokoa:hello china

kokoa:hello china

kas:hello world

kas:hello world

[root@CentOS-7-64 data]# vim !$

vim kas

[root@CentOS-7-64 data]#

Esc + 点   得到前一个命令的参数

[root@CentOS-7-64 data]# catkokoa

hello china

hello china

[root@CentOS-7-64 data]# vim kokoa

1.2 用好这些历史命令的正确方式能给我们的工作很大的便利,还有很多类似的命令,我就不一一演示了,就写在下面了

!$:p                                                 打印上一条命令的最后一个参数

!*:p                                                  打印上一条命令的所有参数

!^:p                                                 打印上一条命令的第一个参数

^command                                 删除上一条命令中的第一个command,并执行删除 command 后的结果

^command1^command2                将上一条命令中的第一个command1替换为command2

!:gs/command1/command2            将上一条命令中所有的command1都替换为 command

ctrl + r                                              搜索历史命令    ctrl+g     退出搜索

command !^                                    将上个命令的第一个参数作command的参数

command !$                                    将上个命令的最后一个参数作command的参数

command !*                                     将上个命令的所有参数作command的参数

command !:n                   将上个命令的第n个参数作command的参数

command !n:^                                 获取第n条命令的第一个参数

command !n:$                                 获取第n条命令的最后一个参数

command !n:m                               获取第n条命令的第m个参数

command !n:*                                 获取第n条命令的所有参数

command !cmd:^                            在命令历史中搜索以 cmd 开头的命令,并获取它的第一 个参数

command !cmd:$                            在命令历史中搜索以 cmd 开头的命令,并获取它的最后一 个参数

command !cmd:n                            在命令历史中搜索以 cmd 开头的命令,并获取它的第n 个参数

command !cmd:*                            在命令历史中搜索以 cmd 开头的命令,并获取它的所有 参数

1.3 历史命令的环境变量

HISTSIZE                                         记录历史命令条数

HISTFILE                                         记录历史命令的文件

HISTFILESIZE         命令历史文件记录历史的条数

HISTTIMEFORMAT                        显示历史命令时间   这个很有用    如:HISTTIMEFORMAT="%T-%F      "   后面留了几个空格,你试试不留空格的效果?

HISTIGNORE

HISTCONTROL                             以下是HISTCONTROL的值与效果

ignoredups                   默认,忽略重复的命令,连续且相同为“重复”

ingorespace                 不记录以空格开头的命令

ingoreboth                    是以上两个值的效果,不记录空格开头,忽略重复

erasedups                     删除重复命令

2. bash快捷键  常用的很多没列出

ctrl+l                                    清屏

ctrl+y            将删除的粘贴到光标处

ctrl+z          挂起

ctrl+c            强行终止

ctrl+s          锁定屏幕,组织输出

ctrl+t          交换字符,将光标前的字符与光标处的字符交换

ctrl+q          对应以上ctrl+s的命令,对ctrl+s进行恢复

ctrl+o          执行当前命令,并重新显示本命令

ctrl+e          将光标移至行尾

ctrl+a          将光标移至行首

ctrl+u          删除到行首

ctrl+k          删除到行尾

ctrl+d          删除光标上的字符

ctrl+h          删除光标前的字符

ctrl+w          向左删除至单词首

alt+r          删除整行

alt+f          光标向右移至单词尾

alt+b          光标向左移至单词首

alt+t          将光标处的单词与前一个单词换位置

alt+d          向左删除至单词首

linux 历史命令快捷键,Linux历史命令及bash快捷键相关推荐

  1. linux 登陆 历史,linux记录每次登陆的历史命令

    编辑/etc/profile,增加如下代码 #Record history operation USER_IP=`who -u am i >/dev/null |awk '{print $NF} ...

  2. linux怎么重复命令,Linux系统中重复执行历史命令的方法有哪些?

    今天小编要跟大家分享的文章是关于Linux系统中重复执行历史命令的方法有哪些?各位正在从事Linux运维工作的小伙伴们,如果要执行一条或多条之前输过的指令,要怎么处理?很多人会想到使用上下箭头去翻查历 ...

  3. linux history存放位置,Linux中history历史命令使用方法详解

    当你在玩Linux的时候,如果你经常使用命令行来控制你的Linux系统,那么有效地使用命令历史机制将会使效率获得极大提升.事实上,一旦你掌握了我在下面给出的15个有关Linux history历史命令 ...

  4. linux 搜索命令 历史,Linux 控制台神器:搜索历史命令 Ctrl + R ( ctrl + r to search the history command )...

    Linux 控制台神器:搜索历史命令 Ctrl + R ( ctrl + r to search the history command ) 2013-01-29 15:30 访问量: 23761 分 ...

  5. linux命令行——linux快速搜索历史命令

    一.需求描述 在执行命令时,对于已经输入的历史命令,可以通过关上下键进行翻找,如果是最近几条,很容易找到,如果是很久之前的命令,依旧使用上下键查找就会力不从心. 二.解决方法 1.方法一history ...

  6. linux ksh 历史命令,防止Linux中的bash(和ksh)历史记录更改

    这是一个将所有执行的命令发送到syslog服务器的解决方案. 以下是将用户执行的所有命令的副本发送到Syslog服务器的两种方法.第一个将使用Bash"陷阱"功能.第二个是在Bas ...

  7. linux怎样用命令提示符,Linux用户必知:一分钟掌握14个常用Linux命令行快捷键

    前几天有个朋友给我发消息:"问你个问题,Linux 命令行有没有快捷键一下从行末会到行头?经常敲了很多命令发现忘加 sudo 了,然后把命令删了重新敲一遍". 正好借此机会给不知道 ...

  8. linux的基本命令快捷键,Linux常用命令快捷键有哪些?

    原标题:Linux常用命令快捷键有哪些? Linux是需要通过命令行操作的系统,命令是经常会用到的.那么在平时的工作或学习中,Linux常用的命令快捷键有哪些? 1.光标移动 Ctrl+a切换到命令行 ...

  9. Linux系统中常用命令行命令、快捷键、创建长路径的快捷键

    Linux系统中常用命令行命令.快捷键.创建长路径的快捷键 1.常用Linux命令: 1.1 文件和目录: cd /home 进入 '/home' 目录 cd - 返回上一级目录 cd -/- 返回上 ...

最新文章

  1. java正确的代码_对文件名为Test.java的java代码描述正确的是()
  2. Web前端面试指导(六):面试后需要总结和交流
  3. 快速排序 (随机选择pivot)
  4. springboot上传限制1M的大坑
  5. python unicodeencodeerror_Python发起请求提示UnicodeEncodeError错误代码解决方法
  6. Uncaught TypeError: this.canvas.getContext is not a function
  7. Enterprise Library 1.0
  8. BP神经网络设计方法
  9. 日常计算机使用的需求和解决方案(一)
  10. VirtualBox中安装Fedora9及其ARM开发环境配置
  11. Java并发编程之ThreadPoolExecutor源码解析
  12. CSUSTOJ-藤原书记想要探病(简单矩阵快速幂)
  13. QMC5883L说明文档
  14. JdbcTemplate – 调用存储过程
  15. 彩虹图纸管理软件的优势
  16. quartz c语言,IOS学习之—— Quartz 2D (C语言的框架)
  17. 微信群管理机器人开发sdk
  18. SPA,什么是单页面应用,为什么要使用单页面应用,单页面应用有啥好处
  19. 初阶C++——C++第二节——类和对象(大全篇)
  20. 告诉你HR看完简历却不通知面试的真相!

热门文章

  1. html木桶布局,CSS3如何实现图片木桶布局?(附代码)
  2. MATLAB元胞自动机报告,元胞自动机概述与MATLAB实现
  3. mysql 输出参数 sql语句_MySQL: 详细的sql语句
  4. vue 导出_Vue核心知识:8.3 vuex在vue-cli中的应用,文件之间的导出与引入
  5. c#中.clear()作用_清单 .Clear()方法以及C#中的示例
  6. Java Integer类shortValue()方法与示例
  7. Net和T-sql中的日期函数操作
  8. android 中 gravity 和 layout_gravity 的区别
  9. Python如何忽略warning的输出
  10. 彻底理解 Cookie、Session、Token