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. 关于Java的String字符串常量的长度问题

    虽然这种问题应该很难遇到,但是遇到了也会感到莫名其妙.不知道大家有没有遇到那种在java代码里用字符串写sql语句的情况,但是如果sql语句字符串的长度太长的话就会报错. 代码如下: 代码A Stri ...

  2. HTML超链接实例介绍

    <html><head><title>第六节课</title><meta charset="UTF-8"></he ...

  3. [转]Log4j使用总结

    Log4j使用总结   一.介绍 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务 器.NT的事件记录器. ...

  4. [Security] Web Security Essentials

    In this course, we'll learn how to exploit and then mitigate several common Web Security Vulnerabili ...

  5. 使用java(jdbc)向mysql中添加数据时出现“unknown column……”错误

    错误情况如题,出现这个错误的原因是这样的: 在数据库中,插入一个字符串数据的时候是需要用单引号引起来的. 而下面的代码,注意看: sta.executeUpdate("INSERT INTO ...

  6. 下载安装MySQL(MacOS)

    在安装MySQL服务器之前,首先要做的事情就是去MySql的官网下载适合自己系统的MySQL版本 https://www.mysql.com/ 点击上方的DOWNLOAD 拉到屏幕最底部选择MySQL ...

  7. 吴裕雄--天生自然 JAVA开发学习:基础语法

    package test; public class temp { /* 第一个Java程序 * 它将打印字符串 Hello World */ public static void main(Stri ...

  8. SSM到Spring Boot-校园商铺平台

    第04章 店铺注册功能模块 4-3 Thumbnailator图片处理和封装Util[通过java代码实现给图片打上水印] 4-3 Thumbnailator图片处理和封装Util[通过java代码实 ...

  9. Postgresql的导表

    背景 前面已经介绍了常用的备份与恢复了,接下来介绍一下导表. 正文 很多情况,会有把数据导出的需求,轻重缓急总会有特别紧急的情况,但是又不是专业干db的人,还是记录下来,以防不时之需. 针对于导表,个 ...

  10. emacs 配置文件

    使用方式: git clone 到本地,把 emacs 复制到 ~/.emacs.d 打开 emacs 会自动安装包 https://github.com/NorseLZJ/lzj-config/tr ...