1. 重复执行上一条指令  !!

[root@iZ23t6nzr7dZ python]# ls /usr/local/
aegis bin etc games include lib lib64 libexec python3 sbin share src
[root@iZ23t6nzr7dZ python]# !!
ls /usr/local/
aegis bin etc games include lib lib64 libexec python3 sbin share src
[root@iZ23t6nzr7dZ python]#

2. 重复执行上一条以a为首的指令 !a

[root@iZ23t6nzr7dZ python]# history
rpm -qf /usr/bin/pwd
rpm -ql coreutils
clear
/usr/local/
ls /usr/local/
ls ls /usr/local/
ls /usr/local/
ls -al /usr/local/
vim /etc/shadow
ls
vim /etc/passwd
clear
ls
cp -rf ./* /tmp/
262 ls -l /tmp/
263 ls -l
264 clear
265 ls /usr/local/
266 history
[root@iZ23t6nzr7dZ python]# !rpm
rpm -ql coreutils
/etc/DIR_COLORS
/etc/DIR_COLORS.256color
/etc/DIR_COLORS.lightbgcolor
/etc/profile.d/colorls.csh
/etc/profile.d/colorls.sh
/usr/bin/[
/usr/bin/arch
/usr/bin/base64

3. 重复执行上一条在history表中记录号码为number的指令  !number

[root@iZ23t6nzr7dZ python]#history
clear
ls
cp -rf ./* /tmp/
262 ls -l /tmp/
263 ls -l
264 clear
265 ls /usr/local/
266 history
267 rpm -ql coreutils
268 clear
269 history
[root@iZ23t6nzr7dZ python]# !267
rpm -ql coreutils
/etc/DIR_COLORS
/etc/DIR_COLORS.256color
/etc/DIR_COLORS.lightbgcolor
/etc/profile.d/colorls.csh
/etc/profile.d/colorls.sh
/usr/bin/[
/usr/bin/arch

4.重复执行前第number条指令  !-number

5. 表示获得上一条命令中的最后一项内容  !$

[root@iZ23t6nzr7dZ python]# ls -l /usr/local/python3/bin/ /etc/passwd
-rw-r--r-- root root Jan : /etc/passwd /usr/local/python3/bin/:
total
lrwxrwxrwx root root Jan : 2to3 -> 2to3-3.7
-rwxr-xr-x root root Jan : 2to3-3.7
-rwxr-xr-x root root Jan : chardetect
-rwxr-xr-x root root Jan : easy_install-3.7
lrwxrwxrwx root root Jan : idle3 -> idle3.
-rwxr-xr-x root root Jan : idle3.
-rwxr-xr-x root root Jan : pip3
-rwxr-xr-x root root Jan : pip3.
lrwxrwxrwx root root Jan : pydoc3 -> pydoc3.
-rwxr-xr-x root root Jan : pydoc3.
lrwxrwxrwx root root Jan : python3 -> python3.
-rwxr-xr-x root root Jan : python3.
lrwxrwxrwx root root Jan : python3.-config -> python3.7m-config
-rwxr-xr-x root root Jan : python3.7m
-rwxr-xr-x root root Jan : python3.7m-config
lrwxrwxrwx root root Jan : python3-config -> python3.-config
lrwxrwxrwx root root Jan : pyvenv -> pyvenv-3.7
-rwxr-xr-x root root Jan : pyvenv-3.7
[root@iZ23t6nzr7dZ python]# cat !$
cat /etc/passwd
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
daemon:x:::daemon:/sbin:/sbin/nologin

6. 表示获得上一条命令中的第一个参数  !^

[root@iZ23t6nzr7dZ python]#
[root@iZ23t6nzr7dZ python]# ls -l /usr/local/python3/bin/ /etc/passwd
-rw-r--r-- root root Jan : /etc/passwd /usr/local/python3/bin/:
total
lrwxrwxrwx root root Jan : 2to3 -> 2to3-3.7
-rwxr-xr-x root root Jan : 2to3-3.7
-rwxr-xr-x root root Jan : chardetect
-rwxr-xr-x root root Jan : easy_install-3.7
lrwxrwxrwx root root Jan : idle3 -> idle3.
-rwxr-xr-x root root Jan : idle3.
-rwxr-xr-x root root Jan : pip3
-rwxr-xr-x root root Jan : pip3.
lrwxrwxrwx root root Jan : pydoc3 -> pydoc3.
-rwxr-xr-x root root Jan : pydoc3.
lrwxrwxrwx root root Jan : python3 -> python3.
-rwxr-xr-x root root Jan : python3.
lrwxrwxrwx root root Jan : python3.-config -> python3.7m-config
-rwxr-xr-x root root Jan : python3.7m
-rwxr-xr-x root root Jan : python3.7m-config
lrwxrwxrwx root root Jan : python3-config -> python3.-config
lrwxrwxrwx root root Jan : pyvenv -> pyvenv-3.7
-rwxr-xr-x root root Jan : pyvenv-3.7
[root@iZ23t6nzr7dZ python]# ls !^
ls -l
total
-rw-r--r-- root root Jan : .py
-rw-r--r-- root root Jan : .py
-rw-r--r-- root root Jan : .py
-rw-r--r-- root root Jan : links.txt
-rw-r--r-- root root Jan : wangping_links_2.txt
-rw-r--r-- root root Jan : wp_links_2.txt

7.上一命令除了最后一个参数   !:-

[root@iZ23t6nzr7dZ python]# ls -l  /etc/passwd /home/python/
-rw-r--r-- root root Jan : /etc/passwd /home/python/:
total
-rw-r--r-- root root Jan : .py
-rw-r--r-- root root Jan : .py
-rw-r--r-- root root Jan : .py
-rw-r--r-- root root Jan : links.txt
-rw-r--r-- root root Jan : wangping_links_2.txt
-rw-r--r-- root root Jan : wp_links_2.txt
[root@iZ23t6nzr7dZ python]# !:-
ls -l /etc/passwd
-rw-r--r-- root root Jan : /etc/passwd
[root@iZ23t6nzr7dZ python]#

8.上一条命令中的所有参数   !*

[root@iZ23t6nzr7dZ python]#
[root@iZ23t6nzr7dZ python]# ls /etc/passwd /home/python/.py
/etc/passwd /home/python/.py
[root@iZ23t6nzr7dZ python]# ls -l !*
ls -l /etc/passwd /home/python/.py
-rw-r--r-- root root Jan : /etc/passwd
-rw-r--r-- root root Jan : /home/python/.py
[root@iZ23t6nzr7dZ python]#

9.使用上条命令指定的参数   ![命令名]:[参数号]

$ cp -rf dira dirb/ #将dira拷贝到dirb

$ ls -l !cp: #查看dira的内容

ls -l dira

total 

-rw-rw-r--  hyb hyb  Jan  : barfile

 10. 用Ctrl + r 组合键来进入历史搜索模式在history表中查询某条过往指令,找到需要重复执行的命令后,按回车键即可重复命令参数(即上一点中的第5条)

感叹号在Linux bash中使用技巧的更多相关文章

  1. Linux bash 中,如何将正常信息和错误信息输出到文件

    问题描述: $ command 2>> error $ command 1>> output 是否有方法,在bash同一行,实现输出stderr到error文件,输出stdou ...

  2. linux bash中too many arguments问题的解决方法

    今天在编写shell脚本时,在if条件后跟的是[ $pid ],执行脚本的时候报 然后我输入改为[[$pid]]后,再执行脚本,就成功了,代码如下: #!/bin/bash pid=`ps -ef|g ...

  3. 在Linux系详解Linux bash中的变量

    (大讲台:国内首个it在线教育混合式自适应学习) 统中进行日常运维或者是编写脚本时,变量是再熟悉不过的了,但这些变量都有哪些类型,具体的用法又有哪些差异呢?本文整理分享给大家: 一.bash变量类型: ...

  4. Linux bash中的变量分类

    1.本地变量 VAR=XYZ 2.局部变量 local VAR=XYZ 3.环境变量 在子shell中可以起作用 export VAR=XYZ 4.位置变量 $0 脚本名本身 $1 第一个参数 $2 ...

  5. Linux Bash脚本编程语言中的美学与哲学

    我承认,我再一次地当了标题党.但是不可否认,这一定是一篇精华随笔.在这一篇中,我将探讨Bash脚本语言中的美学与哲学. 这不是一篇Bash脚本编程的教程,但是却能让人更加深入地了解Bash脚本编程,更 ...

  6. Linux小知识(1): bash中执行数据库的相关操作

    工作中经常会遇到命令行操作数据库或登陆至其他服务器等情况,往往需要通过命令行进入相关的数据库或登陆至相关的服务器,再执行指令操作,因此有没有方法,在命令行或bash脚本中模拟进入数据库或登陆服务器操作 ...

  7. Linux系统中命令提示符解释-Linux中命令格式、分类-bash中的快捷键

    1.命令提示符 [root@mysqlserver01 opt]# [root@mysqlserver01 ~]# root 当前用户名 @ 固定的(格式) mysqlserver01 主机名 opt ...

  8. 在Windows中运行Linux bash命令的几种方法

    如果你正在课程中正在学习 shell 脚本,那么需要使用 Linux 命令来练习命令和脚本. 你的学校实验室可能安装了 Linux,但是你自己没有安装了 Linux 的笔记本电脑,而是像其他人一样的 ...

  9. find查找文件命令 - Linux系统中的常用技巧整理

    “find”在Linux系统中是比较常用的文件查找命令,使用方法有很多,可以拥有查找文件.文件目录.文件更新时间.文件大小.文件权限及对比文件时间.下面是整理的“find”常用方法,方便以后需要的时候 ...

随机推荐

  1. JavaWeb之监听器

    1. 介绍         监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其实就是一个实现特定接口的普通java程 ...

  2. shell计数

    cat 20171015_datarecord.txt| awk -F '_' '{a[$1]++} END {for (i in a) {print i,a[i]|"sort -k 2&q ...

  3. Java编程知识点梳理

    1. elementAt()   temp.elementAt(0) 返回temp这个vector里面存放的第一个元素--->也是一个vector类型. 2. 字符串空格分割 String [] ...

  4. Navicat Premium 12安装和破解

    链接:https://pan.baidu.com/s/1x8AFWlJYGIl3TlbA1vX63g 提取码:9hu0  安装步骤: 1.下载好后点击navicat12018_premium_cs_x ...

  5. 最短路问题--P4779 单源最短路(标准版)Dijkstra堆优化

    题目背景 2018 年7月 19 日,某位同学在 NOI Day 1 T1 归程 一题里非常熟练地使用了一个广为人知的算法求最短路. 最终,他因此没能与理想的大学达成契约. 小 F 衷心祝愿大家不再重 ...

  6. MySQL各种存储引擎对比总结

    1.MyISAM 是MySQL5.5版之前默认的存储引擎,特点:数据文件和索引文件可以放置在不同的目录,平局分布IO,获得更快的速度.不支持事务,不支持外键. 2.InnoDB 是 MySQL5.5版 ...

  7. cuda addressMode解析

    cudaAddressModeClamp:超出范围就用边界值代替,示意: AA | ABCDE | EE cudaAddressModeBorder:超出范围就用零代替,示意: 00 | ABCDE ...

  8. Red Hat、Fedora和Ubuntu软件包操作

    五.Red Hat.Fedora和Ubuntu软件包操作对比 最后总结: 在 /etc/yum.conf 的 [main] 后面添加以下配置即可! 复制代码 代码如下: exclude=kernel* ...

  9. Python基础学习一

    Python基础学习一 1.变量与常量 变量名:大小写英文.数字.下划线的组合,数字不能开头 常量名:习惯上常量用大写字母命名,例如"PI" 2.多行输出 转义符:反斜杠(),如果 ...

  10. ASP.NET ZERO 学习 导航菜单

    定义PageNames和PermissionName PageNames : Web/App_Start/Navigation/PageNames.cs public const string Das ...