自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

5 種方法重復(fù)執(zhí)行歷史命令

系統(tǒng) Linux
Linux 下,如果要執(zhí)行一條或多條之前輸過的指令,要怎么處理?很多人會想到使用上下箭頭去翻查歷史輸入的命令。這當(dāng)然是可以了,除了這種方法,本文再介紹另外 5 種方法來實(shí)現(xiàn)這樣的效果。

Linux 下,如果要執(zhí)行一條或多條之前輸過的指令,要怎么處理?很多人會想到使用上下箭頭去翻查歷史輸入的命令。這當(dāng)然是可以了,除了這種方法,本文再介紹另外 5 種方法來實(shí)現(xiàn)這樣的效果。

[[330069]]

在正式開始之前,我們先隨便執(zhí)行幾條命令,便于后面演示。為了節(jié)約篇幅,執(zhí)行結(jié)果暫時不列出來。

  1. $ ls -l 
  2. $ pwd 
  3. $ date 
  4. $ uname -a 

方法1:!!

沒錯,兩個嘆號也是一條命令,它會重復(fù)執(zhí)行最后執(zhí)行的那條命令。

  1. $ !! 

這條命令等同于如下效果:

  1. $ !! 
  2. uname -a 
  3. Linux VM_0_16_centos 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 

如果需要 root 權(quán)限,同樣只需在前面加 sudo 即可。

  1. $ sudo !! 

方法2:!un

假如我們在操作的過程中輸入了非常多的命令,現(xiàn)在要重復(fù)執(zhí)行其中的一條,該怎么處理?有一種簡單的方法,就是利用上下箭頭去翻查,但如果之前輸入了太多命令,翻查起來可以要找半天。

這時候,!un 這種命令就顯現(xiàn)出它的作用來了。記住,這個 un 不是固定的,它是代表你想要重復(fù)輸入的命令的前幾個字符。

比如在這個例程中,我們想重復(fù)執(zhí)行 uname -a 這條命令,只需這樣執(zhí)行:

  1. $ !un 
  2. uname -a 
  3. Linux VM_0_16_centos 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 

如果你之前輸入的命令有多個是以 un 開頭的,那么你可能需要多輸入幾個字符。

  1. $ !uname 

方法3:!-1

這個方法就比較靈活了,!-1 代表重復(fù)執(zhí)行最后一條命令,!-2 表示重復(fù)執(zhí)行倒數(shù)第二條命令,!-n 表示重復(fù)執(zhí)行倒數(shù)第 n 條指令。

  1. $ !-1 
  2. uname -a 
  3. Linux VM_0_16_centos 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 
  4. $ !-3    # 注意,前面的 !-1 也算一條指令,所以倒數(shù)第 3 條指令是 date ,而不是 pwd 
  5. date 
  6. Sun May 19 18:30:26 CST 2019 

方法4:ctrl+r

ctrl+r 這個快捷鍵可以讓你搜索你之前輸入過的所有的命令。其實(shí)良許更喜歡這個快捷鍵,因?yàn)樗鼤屇憧吹侥銓⒁獔?zhí)行的命令。而如果是 !! 命令的話,它是直接執(zhí)行最后一條命令。如果這條命令是安全的還好,要是像 rm -rf /* 這樣的命令,那就悲劇了。

假如我現(xiàn)在要重復(fù)執(zhí)行 uname -a ,我們可以先按一下 ctrl+r 這個組合鍵,然后再依次敲入 ‘u' 'n' 'a' ,如果之前輸入的命令比較少的話,基本只需敲一個 u 或 n 就可以找到你要輸入的命令了。

  1. (reverse-i-search)`u': uname -a 

找到之后,再敲一下回車,即可重復(fù)執(zhí)行你要輸入的命令了。

假如說你要對找到的那條命令進(jìn)行一些小修改,那么只需敲一下左或右的箭頭即可。

方法5:ctrl+p 或 ctrl+n 配合 ctrl+o

如果你是懶癌晚期,不想再敲任何字母,只想翻查找到想要的命令并執(zhí)行,要怎么操作?

前面提到,翻查歷史輸入的命令,可以使用上下箭頭。但這不是最高效的,我們可以使用 ctrl+p 和 ctrl+n 來達(dá)到同樣的效果。這樣更高效,因?yàn)槟愕氖植挥锰饋聿⒁苿拥郊^區(qū)。

通過 ctrl+p/n 的組合鍵找到想要的命令之后,我們可以按 ctrl+o 來執(zhí)行這條命令。這個組合鍵與回車不太相同,因?yàn)樗嘶剀囍?,還另外跳轉(zhuǎn)到最后一條命令。通過不斷地 ctrl+p/n ,然后 ctrl+o ,就可以高效的重復(fù)執(zhí)行你要執(zhí)行的命令了。

小結(jié)

重復(fù)執(zhí)行之前執(zhí)行過的命令在我們的工作中非常經(jīng)常用到。如果命令比較短還好,再輸一遍也花不了多少時間。而如果命令很長,那再重復(fù)輸入就比較耗時間了,效率也比較低。除了使用上下箭頭之外,我們還有很多方法去實(shí)現(xiàn)同樣的效果。將這些技巧掌握了,肯定會大大提升你的工作效率!

本文授權(quán)轉(zhuǎn)載自公眾號「良許Linux」。良許,世界500強(qiáng)外企Linux開發(fā)工程師,公眾號里分享大量Linux干貨,歡迎關(guān)注!

 

責(zé)任編輯:趙寧寧 來源: 今日頭條
相關(guān)推薦

2020-03-30 08:45:31

Linux命令

2019-12-11 11:25:48

Linux命令行郵件

2020-05-12 10:32:25

Python列表重復(fù)

2010-04-29 15:58:51

Oracle存儲過程

2020-05-28 13:33:30

React Hook前端開發(fā)

2018-11-01 10:10:35

網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊網(wǎng)絡(luò)威脅

2023-09-21 11:03:31

開發(fā)輪子工具

2010-07-01 12:29:27

SQL Server重

2019-04-29 09:19:04

Linux命令行

2012-05-10 10:53:10

Linuxhistory

2019-09-05 09:54:01

Java產(chǎn)品經(jīng)理人生第一份工作

2010-11-15 14:42:03

Oracle查詢重復(fù)記

2009-12-21 14:31:39

Fedora core

2020-09-01 09:56:26

云端云計(jì)算云服務(wù)

2024-10-16 18:09:54

2019-08-22 07:24:25

2020-05-26 09:08:23

命令循環(huán)Linux

2014-03-17 09:22:43

Linux命令

2010-09-02 10:36:51

SQL刪除

2021-02-25 10:46:21

云計(jì)算云服務(wù)器云安全
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號