終端機的十大技巧

1.用!!執行最後一個命令。

標題說明了一切,只需在終端中輸入以下內容即可...

!!

…重新執行最後輸入的命令。 當我們忘記輸入時,此技巧非常有用 須藤 一開始。 在這種情況下,您將必須輸入:

sudo !!

為了發現更有效的方法以充分利用此技巧,我建議您閱讀以下內容 舊帖子.

2.執行最後一條命令,但更正鍵入錯誤

當我們輸入帶有簡單錯字的命令時,此技巧非常有用。 例如,如果我們運行:

迴聲”desdelinuxz"

您可以通過輸入以下內容進行更正:

^z

3.調用文本編輯器輸入長命令

有時您需要在終端中輸入無盡的命令。 在這種情況下,簡單的文本編輯器(例如nano或emacs)的幫助可能會有所幫助。

要打開編輯器,只需按 Ctrl + X + E 在一個終端。 到目前為止,您輸入的文本一旦打開將被複製到文本編輯器中。

就其本身而言,使用的編輯器將是$ EDITOR變量中指定的編輯器。 要更改此配置,可以執行...

出口編輯器=納米

…用您喜歡的編輯器替換nano。

4.執行命令而不將其保存到歷史記錄

真正的黑客不能忽略這個技巧。 眾所周知,bash保存了已執行命令的歷史記錄,使用鍵盤箭頭或 按Ctrl + R (執行 反向搜尋 在歷史上)。

在這種情況下,為了使輸入的命令不會保存在歷史記錄中,您需要做的是在前面加一個空格:

命令

5.自動放置命令的最後一個參數

假設先前執行的命令是

cp file.txt / var / www / wp-content / uploads / 2009/03 /

要訪問有問題的目錄,可以輸入以下命令 cd 接下來 Alt +。 o Esc +。 :

cd'ALT +。

這只不過是輸入的一種簡便方法:

cd / var / www / wp-content /上傳/ 2009/03 /
通過繼續按下提到的鍵盤快捷鍵,可以瀏覽最後執行的命令的歷史記錄。

6.在指定時間執行命令

是的,這就是它的存在 cron的。 但是,有時我們想運行一個命令,使其在特定時間運行,但只能運行一次。

假設我們要執行命令 ls -l 在午夜。 在這種情況下,我們必須通過以下方式執行它:

迴聲“ ls -l” | 在午夜

7.獲取您的外部IP

感謝提供的服務 http://ifconfig.me/ 可以直接從終端了解Internet連接的各種數據:

curl ifconfig.me/ip // IP地址curl ifconfig.me/host //遠程服務器curl ifconfig.me/ua //用戶代理curl ifconfig.me/port //端口

8.了解如何使用Ctrl + u和Ctrl + y

您開始輸入命令並想起要執行其他操作之前發生了幾次? 好吧,可以進行某種剪切粘貼,以便以後可以更輕鬆地重新輸入剩下的一半命令。

假設您開始寫...

cd /家庭/用戶

您還記得在必須檢查當前目錄中的內容之前。 在這種情況下,請按 按Ctrl + U (這有點像“切”)。

輸入需要首先運行的命令。 假設...

ls -l

...然後按 Ctrl + y (它的工作方式類似於“粘貼”)。

9.輕鬆清潔端子

Ctrl + L 可以輕鬆清潔終端。

10.轉到目錄,運行命令,然後返回當前目錄

這個把戲很高興。 要在不離開當前目錄的情況下執行一系列命令,只需將它們放在括號中即可。 幾乎每個人都知道,要執行一系列命令,必須使用&&將它們串聯起來。 使用這些概念,我們可以執行以下操作:

(cd / tmp && ls)

該命令的結果(請注意括號)將是文件夾中文件和目錄的列表 / tmp目錄。 全部都沒有離開我們的當前目錄。 一顆寶石!

Yapa。 列出最常用的命令

去看他們 最常用的命令 只需執行以下命令:

歷史| awk'{a [$ 2] ++} END {for(i in a){打印a [i]“” i}}''| 排序-rn | 頭

就我而言,獲獎者是:

450 yaourt 415 sudo 132 git 99 cd 70 leafpad 70 killall 68 ls 52 pacman 50 xrandr 45 top

對於像該服務器這樣的終端迷,我建議訪問 命令行。 另外,為什麼不別停下來看看 檔案 從我們的博客。

是否缺少任何技巧? 不要忘記在下面分享和評論。 🙂

發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   狐狸 他說:

    我曾經用過一個,在我的inputrc中省略了大寫字母,因為老實說,許多像這樣開始的文件都會落入我的腦海。

  2.   耶穌·佩拉雷斯 他說:

    我認為最重要的一個是history命令,它在其中返回一個編號列表
    使用過的命令,如果要使用其中任何一個,請使用以下行
    !22

    將執行您歷史記錄中編號為22的命令

    要搜索具有自動完成功能的命令是
    Ctrl + R

    1.    xurxo 他說:

      我也總是使用Ctrl + r重複上一條命令; 當最後一個出現時,您可以按向上Pag(向上箭頭)在歷史記錄中回滾。

      問候。

  3.   羅德里戈·布拉沃(Rodrigo Bravo) 他說:

    好文章。 感謝您分享這些提示。
    我想共享一個我每天使用的“ fg”,它可以讓您打開使用Ctrl + z停止的應用程序。

    1.    Giskard 他說:

      並通過“ bg”將其發送到後台🙂

    2.    讓我們使用linux 他說:

      看著你...好招! 感謝分享。
      擁抱! 保羅

  4.   加布里埃爾 他說:

    這篇帖子很棒,它們總是讓您記住您知道並最終忘記的事情,但是這些確實有用。

  5.   奇維奇 他說:

    終極作弊總是很受歡迎的。
    令人難以置信的是,我不知道歷史記錄中省略了為命令添加空格的過程。
    非常感謝,問候!

  6.   易主 他說:

    使用自動完成過濾歷史記錄添加到$ HOME / .inputrc文件中
    “ \ E [5〜”:向後搜索歷史
    “ \ E [6〜”:歷史搜索

    例如在某個時候您曾經使用過:
    $ cd /一個/路徑/更長/大於/該/屎

    現在您想再次使用它,您必須執行以下操作:
    $ cd
    然後按“ Page Up”或“ Page Down”鍵瀏覽以“ cd”開頭的歷史記錄中的所有命令。

    1.    Giskard 他說:

      要么…。 在不編輯任何內容的情況下,先按Ctrl + R,然後按cd(如果要使用“ cd”搜索某些內容),然後反复按Ctrl + R,將看到包含該命令的所有命令,直到找到所需的命令為止。 顯然,如果它是前一個,您將得到一個。

    2.    讓我們使用linux 他說:

      Muy bueno!

  7.   螞蟻 他說:

    實際上,ls / tmp應該足以列出目錄而無需離開當前目錄。

  8.   殺手角 他說:

    您也可以使用“;”連接命令。 如示例n°10,它將是這樣的:

    (cd / tmp; ls)

    問候

    1.    魯達·馬喬 他說:

      他“;” 它與“ &&”(和)的工作方式不同,當我們執行command-1和&& command-2時,僅當第一個命令的輸出為“ 0”時才執行第二個命令,即沒有錯誤。 對於分號,無論第一個命令的輸出如何,​​都會執行第二個命令。 為了擴展,這裡有運算符«||» (或),在這種情況下,僅當第一個命令在輸出上引發錯誤時才執行第二個命令。 問候。

  9.   匿名 他說:

    為了使記住歷史的每一行都有日期和時間,普通用戶或root的〜.bashrc中必須有一個環境變量。

    #nano .bashrc
    出口HISTTIMEFORMAT =»%F%T»

    #歷史
    492 2014-09-02 14:25:57 revdep-rebuild -i -v
    493 2014-09-02 14:31:14 eclean-dist -d
    494 2014-09-02 14:31:23 localepurge -v
    495 2014-09-02 14:31:29等更新
    496 2014-09-02 14:31:54出現–depclean –假裝
    497 2014-09-02 14:39:08更新b

    我正在測試更多的選項,這些選項用於節省的行數。

  10.   卡盤 他說:

    很好的帖子。 真的非常有用。 技巧4是執行命令而不將其保存在歷史記錄中的技巧,僅在Ubuntu中對我有用,在Debian和Centos中不起作用。

    1.    Azureus的 他說:

      它在樹莓上對我有用,而不是拱門上。

  11.   查帕拉爾 他說:

    Merveilleux!

  12.   Erjuak 他說:

    HOLA,
    在執行命令之前放置什麼空格,以便它不會在歷史記錄中註冊,因為它不起作用...
    [用戶@主機/] $ ls -l
    總104
    dr-xr-xr-x。 2 root root 4096年21月03日55:XNUMX bin
    dr-xr-xr-x。 5 root root 3072 Aug 20 17:26 boot
    drwxr-xr-x。 2 root root 4096 9年2013月XNUMX日cgroup

    [用戶@主機/] $歷史
    1024磅
    1025磅
    1026年的歷史
    1027 ls -l
    1028年的歷史

    有趣的文章

    問候

  13.   Erjuak 他說:

    抱歉,未閱讀所有帖子,
    測試也以centos進行。

  14.   埃利奧時間3000 他說:

    可以使用Ctrl + U和Ctrl + Y一起使用。

  15.   鸚鵡螺 他說:

    在我的系統上,最常用的命令列表通過將變量更改為$ 5為我工作。

    輸出示例:

    1122須藤
    362升
    279清除
    214 cd
    142挖
    第141話
    第130話
    122 MV
    112病毒
    112歷史

    這是因為在我的.bashrc文件中,以下行:
    #顯示歷史記錄命令的日期
    出口HISTTIMEFORMAT ='%F%T:'

    我幾乎可以肯定,周圍的許多人同時使用了多個終端。
    現在,我不知道是否要告訴您這是一個終端把戲,但是由於我通常有許多窗口或使用屏幕打開多個終端,因此這將啟用在這些終端之一中輸入的任何命令,因為它將在全部。

    這在.bashrc文件中:

    歷史記錄= 90000
    HISTFILESIZE = $ HISTSIZE
    HISTCONTROL = ignorespace:忽略的ups

    歷史(){
    _bash_history_sync
    內置歷史記錄“ $ @”
    }

    _bash_history_sync(){
    內置歷史記錄-a#1
    HISTFILESIZE = $ HISTSIZE#2
    內置歷史記錄-c#3
    內置歷史記錄-r#4
    }

    PROMPT_COMMAND = _bash_history_sync

    1.    讓我們使用linux 他說:

      很好的貢獻! 感謝通過。
      擁抱! 保羅

  16.   羅伊 他說:

    恭喜這篇文章。
    非常實用,我學到了一些命令。

  17.   女孩 他說:

    儘管我已經在這些問題上有所“經驗”,但是這些技巧總是值得讚賞的,所以……作為技巧的主要部分!

  18.   九分 他說:

    太好了,謝謝你的把戲,它們真的很有用😀

  19.   文蘇克 他說:

    控制台的路徑是難以理解的

  20.   設計者 他說:

    按下control + u和control + y的技巧並不取決於shell,而是取決於tty的配置。 到目前為止,在Linux下tty是非常複雜的實體,實際上我一直在研究它們的操作,並且我可以確保它們的來龍去脈要比看上去的多。 tty的某些控製字符會更改其狀態,例如,我偶然遇到了一個貓二進製文件,並且在所有“垃圾”出現在屏幕上之後,提示很奇怪或帶有其他編碼。 這是因為在隨機文件中,遇到tty控製字符的可能性很高。

    例如,在外殼中運行此命令:

    打印'33c'

    這將清除屏幕(就像您運行清除一樣)。

    其他組合,例如使用control + L清除屏幕,來自於正在使用的外殼本身,經典的/ bin / sh外殼通常不會帶來此功能。

    另外,今天有很多用於在Linux下處理文件和套接字的複雜選項。 例如,如果您使用open()打開tty設備,則在AIO(異步輸入/輸出)模式下,每當輸入緩衝區中有可用數據時,該進程將收到SIGIO。

    例如,如果bash只是通過讀取行並執行命令來工作(就像執行腳本時一樣),則在按control + L時,此字符序列將被簡單地包含在命令中,但由於bash具有控制權輸入緩衝區的緩衝區可以檢測到它。

    例如,有時在編程時,我開始使用fcntl來獲取非阻塞輸入緩衝區,甚至在ncurses庫中也使用了該緩衝區(在程序中啟動ncurses之前要對控件tty進行操作)。

    您好!

  21.   勞塔羅 他說:

    對於那些在一開始沒有使用空格的人,也許沒有將其添加到音符中的人,有一個名為HISTIGNORE的變量,其中配置了命令之前添加的字符,以便在歷史記錄中將其忽略。
    在某些安裝中,此變量並非來自
    問候和好帖子! 直接到收藏夾!

    請注意,在評論中我還看到了一些有趣的東西..!

  22.   拉蒙·伊達爾戈(Ramon Hidalgo) 他說:

    一切真的非常有用。 謝謝。