zoukankan      html  css  js  c++  java
  • 感叹号在Linux bash中使用技巧

    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
      248  rpm -qf /usr/bin/pwd
      249  rpm -ql coreutils
      250  clear
      251  /usr/local/
      252  ls /usr/local/
      253  ls ls /usr/local/
      254  ls /usr/local/
      255  ls -al /usr/local/
      256  vim /etc/shadow
      257  ls
      258  vim /etc/passwd
      259  clear
      260  ls
      261  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
      259  clear
      260  ls
      261  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-- 1 root root 1159 Jan 30 17:23 /etc/passwd
    
    /usr/local/python3/bin/:
    total 27340
    lrwxrwxrwx 1 root root        8 Jan 30 11:11 2to3 -> 2to3-3.7
    -rwxr-xr-x 1 root root      109 Jan 30 11:11 2to3-3.7
    -rwxr-xr-x 1 root root      225 Jan 30 12:07 chardetect
    -rwxr-xr-x 1 root root      250 Jan 30 11:11 easy_install-3.7
    lrwxrwxrwx 1 root root        7 Jan 30 11:11 idle3 -> idle3.7
    -rwxr-xr-x 1 root root      107 Jan 30 11:11 idle3.7
    -rwxr-xr-x 1 root root      232 Jan 30 11:11 pip3
    -rwxr-xr-x 1 root root      232 Jan 30 11:11 pip3.7
    lrwxrwxrwx 1 root root        8 Jan 30 11:11 pydoc3 -> pydoc3.7
    -rwxr-xr-x 1 root root       92 Jan 30 11:11 pydoc3.7
    lrwxrwxrwx 1 root root        9 Jan 30 11:11 python3 -> python3.7
    -rwxr-xr-x 2 root root 13978072 Jan 30 11:10 python3.7
    lrwxrwxrwx 1 root root       17 Jan 30 11:11 python3.7-config -> python3.7m-config
    -rwxr-xr-x 2 root root 13978072 Jan 30 11:10 python3.7m
    -rwxr-xr-x 1 root root     3105 Jan 30 11:11 python3.7m-config
    lrwxrwxrwx 1 root root       16 Jan 30 11:11 python3-config -> python3.7-config
    lrwxrwxrwx 1 root root       10 Jan 30 11:11 pyvenv -> pyvenv-3.7
    -rwxr-xr-x 1 root root      449 Jan 30 11:11 pyvenv-3.7
    [root@iZ23t6nzr7dZ python]# cat !$
    cat /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin

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

    [root@iZ23t6nzr7dZ python]# 
    [root@iZ23t6nzr7dZ python]# ls -l /usr/local/python3/bin/ /etc/passwd
    -rw-r--r-- 1 root root 1159 Jan 30 17:23 /etc/passwd
    
    /usr/local/python3/bin/:
    total 27340
    lrwxrwxrwx 1 root root        8 Jan 30 11:11 2to3 -> 2to3-3.7
    -rwxr-xr-x 1 root root      109 Jan 30 11:11 2to3-3.7
    -rwxr-xr-x 1 root root      225 Jan 30 12:07 chardetect
    -rwxr-xr-x 1 root root      250 Jan 30 11:11 easy_install-3.7
    lrwxrwxrwx 1 root root        7 Jan 30 11:11 idle3 -> idle3.7
    -rwxr-xr-x 1 root root      107 Jan 30 11:11 idle3.7
    -rwxr-xr-x 1 root root      232 Jan 30 11:11 pip3
    -rwxr-xr-x 1 root root      232 Jan 30 11:11 pip3.7
    lrwxrwxrwx 1 root root        8 Jan 30 11:11 pydoc3 -> pydoc3.7
    -rwxr-xr-x 1 root root       92 Jan 30 11:11 pydoc3.7
    lrwxrwxrwx 1 root root        9 Jan 30 11:11 python3 -> python3.7
    -rwxr-xr-x 2 root root 13978072 Jan 30 11:10 python3.7
    lrwxrwxrwx 1 root root       17 Jan 30 11:11 python3.7-config -> python3.7m-config
    -rwxr-xr-x 2 root root 13978072 Jan 30 11:10 python3.7m
    -rwxr-xr-x 1 root root     3105 Jan 30 11:11 python3.7m-config
    lrwxrwxrwx 1 root root       16 Jan 30 11:11 python3-config -> python3.7-config
    lrwxrwxrwx 1 root root       10 Jan 30 11:11 pyvenv -> pyvenv-3.7
    -rwxr-xr-x 1 root root      449 Jan 30 11:11 pyvenv-3.7
    [root@iZ23t6nzr7dZ python]# ls !^
    ls -l
    total 92
    -rw-r--r-- 1 root root   958 Jan 30 18:16 1.py
    -rw-r--r-- 1 root root   998 Jan 30 21:01 2.py
    -rw-r--r-- 1 root root    59 Jan 30 21:15 3.py
    -rw-r--r-- 1 root root 59824 Jan 30 20:53 links.txt
    -rw-r--r-- 1 root root 14956 Jan 30 20:59 wangping_links_2.txt
    -rw-r--r-- 1 root root    32 Jan 30 20:59 wp_links_2.txt

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

    [root@iZ23t6nzr7dZ python]# ls -l  /etc/passwd /home/python/
    -rw-r--r-- 1 root root 1159 Jan 30 17:23 /etc/passwd
    
    /home/python/:
    total 92
    -rw-r--r-- 1 root root   958 Jan 30 18:16 1.py
    -rw-r--r-- 1 root root   998 Jan 30 21:01 2.py
    -rw-r--r-- 1 root root    59 Jan 30 21:15 3.py
    -rw-r--r-- 1 root root 59824 Jan 30 20:53 links.txt
    -rw-r--r-- 1 root root 14956 Jan 30 20:59 wangping_links_2.txt
    -rw-r--r-- 1 root root    32 Jan 30 20:59 wp_links_2.txt
    [root@iZ23t6nzr7dZ python]# !:-
    ls -l /etc/passwd
    -rw-r--r-- 1 root root 1159 Jan 30 17:23 /etc/passwd
    [root@iZ23t6nzr7dZ python]#

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

    [root@iZ23t6nzr7dZ python]# 
    [root@iZ23t6nzr7dZ python]# ls /etc/passwd /home/python/1.py 
    /etc/passwd  /home/python/1.py
    [root@iZ23t6nzr7dZ python]# ls -l !*
    ls -l /etc/passwd /home/python/1.py
    -rw-r--r-- 1 root root 1159 Jan 30 17:23 /etc/passwd
    -rw-r--r-- 1 root root  958 Jan 30 18:16 /home/python/1.py
    [root@iZ23t6nzr7dZ python]# 

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

    $ cp -rf dira dirb/ #将dira拷贝到dirb
    
    $ ls -l !cp:2 #查看dira的内容
    
    ls -l dira
    
    total 0
    
    -rw-rw-r-- 1 hyb hyb 0 Jan 20 16:18 barfile

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

  • 相关阅读:
    什么是webview
    juqery.fn.extend和jquery.extend
    LeetCode
    5. Longest Palindromic Substring
    42. Trapping Rain Water
    11. Container With Most Water
    621. Task Scheduler
    49. Group Anagrams
    739. Daily Temperatures
    3. Longest Substring Without Repeating Characters
  • 原文地址:https://www.cnblogs.com/gavin11/p/10341190.html
Copyright © 2011-2022 走看看