Linux運維學習歷程-第四天-Linux的使用幫助和快捷鍵

本章內容

    命令存放位置

    命令幫助 

    help

    man幫助

    其它幫助   

    命令歷史

    快捷鍵

一、命令存放位置

     根據Linux的哲學思想:一切皆文件來說,在Linux系統中基本上什么都是文檔、應用軟件、甚至是硬件,當然命令也不例外(內部命令雖然沒有具體文件,但是都是內嵌在shell內部的,而shell本身是外部命令,也是文件),而我們有些情況就必須執行完整路徑格式的命令,所以我們必須大致知道命令都在那里,這樣才能更好的了解命令。

     命令本身是一個可執行的程序文件:可執行二進制格式的文件,有可能調用共享庫文件

 多數系統程序文件都存放在:/bin 、/sbin 、/usr/bin、/usr/sbin

 如果安裝第三方應用程序或非標準系統自帶的程序也有  /usr/loacl/bin   /usr/local/sbin

     普通命令:/bin    /usr/bin         /usr/local/bin

     管理命令:/sbin     /usr/sbin       /usr/local/sbin

     共享庫(沒有執行入口) :多數存放在

     32bits的庫   /lib     /usr/lib     /usr/local/lib         

     64bits的庫 (兼容32bits的庫)/lib64    /usr/lin64   /usr/local/lib64

     注意:并非所有的命令都有一個在某目錄下與之對應的可執行程序文件

     命令必須遵循特定格式規范;exe、msi、ELF(Linux)

       #file /bin/ls  查看可執行程序文件的內容格式類型信息

       #which COMMAND  查看外部命令的完整路徑

       #whereis COMMAND  查看命令完整路徑和對應man幫助文件目錄 

二、命令幫助

   獲取命令的使用幫助:

      內部命令:help COMMAND

            man COMMAND(此命令為內部命令例如help命令本身,但是所查結果都是對應shell這個外部命令的幫助文件,比如bash)所以執行的實質是man bash   

      外部命令: (1) 命令自帶簡要格式的使用幫助#COMMAND –help

                                  #COMMAND -h

             (2) 使用手冊:manual   #man COMMAND    

             (3) info在線信息文檔 

             (4) 自帶文檔(README、CHANGELOG、INSTALL)

             (5) 官方文檔

             (6)發行版的文檔

             (7)Goolge、百度

三、help幫助(內部命令)與–help選項(外部命令相關)

    help幫助  

    #help help

    help [-dms] [PATTERN …]

    顯示內嵌命令的相關信息。

    顯示內嵌命令的簡略信息。如果指定了 PATTERN 模式,給出所有匹配 PATTERN 模式的命令的詳細幫助,否則打印一個幫助主題列表   

    選項:

      -d輸出每個主題的簡短描述

      -m以偽 man 手冊的格式顯示使用方法

      -s為每一個匹配 PATTERN 模式的主題僅顯示一個用法簡介  

    參數:

       PATTERNPattern 模式指定一個幫助主題

  

   –help 選項

      顯示用法總結和參數列表

      使用的大多數,但并非所有的

    例如

    $ date –help

     Usage: date [OPTION]… [+FORMAT] or: date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]

    []  是可選的

    CAPS或 或 <>  是變量

    …  表示一個列表

    x |y| z “ 的意思是“ x 或 y 或 z “

    -abc的 的  意思是-a -b -c

四、manual使用手冊(man命令)

   manual:使用手冊提供命令幫助的文件

   手冊頁存放在/usr/share/man,并是壓縮格式的文件,man 頁面分組為不同的“章節”

        幾乎每個命令都有man 的“頁面”

         man 頁面分組為不同的   man1、man2、…

         man 命令的配置文件:/etc/man.config | man_db.conf

         MANPATH /PATH/TO/SOMEWHERE:  指明新手冊文件搜索位置

         # man – M /PATH/TO/SOMEWHERE COMMAND : 到指定位置下搜索 COMMAND 命令的手冊頁并顯示  

    man [OPTION…] [章節] 手冊頁…  

            man CHAPTER(代表數字) COMMAND

            man1:用戶命令

            man2:系統調用

            man3:C庫調用

            man4:設備文件及特殊文件

            man5:文件格式(配置文件格式)

            man6:游戲的玩法使用幫助

            man7:雜項

            man8:管理工具及守護進行(系統管理員手冊)

            man9:Linux  內核API

   man內容項:

       SECTION:

            NAME:功能性說明

            SYNOPSIS:語法格式

            DESCRIPTION:描述

            OPTIONS:選項

            EXAMPLES:使用示例

            AUTHOR:作者

            BUGS:報告程序bug的方式 

            SEE ALSO:參考

            …

            SYNOPSIS:

            []:可選內容(可省略)

            <>:必須提供的內容

            {}:分組輔助性的,用于分隔

            a|b|c:多選一

            …:同類內容可出現多個

    注意:并非每個COMMAND在所有章節下都有手冊

            查看COMMAND在哪個目錄下有手冊

            ~]#whatis COMMAND

            注意:其執行過程是查詢數據庫進行的

            手動更新數據庫:

            ~]#makewhatis  (centos6)    

            ~]#mandb(centos7)

    man命令打開手冊以后的操作方法:使用less 命令實現

       翻屏:

            空格鍵:向文件尾部翻一屏

            小 b:向文件首部翻一屏

            Ctrl+d:向文件尾部翻半屏

            Ctrl+u:向文件首部翻半屏

            回車鍵:向文件尾部翻一行

            小k:向文件首部翻一行

            大G:跳轉至最后一行

            #G:跳轉至指定行(#數字)

            1G:跳轉至文件首部

        文本搜索:

            /keyword(關鍵詞):從文件首部向文件尾部依次查找

            ?keyword(關鍵詞):從文件尾首向文件部部依次查找

            n:與查找命令方向相同翻

            N:與查找命令方向相反翻

        退出:

            q:quit

四、其它幫助

     

    whatis

      顯示命令的簡短描述

      每晚使用一個數據庫更新

      剛安裝后不可立即使用

      makewhatis | mandb 制作數據庫

      whatis cal 或 man –f cal

   

    info

       # info COMMAND

      man常用于命令參考GNU工具info適合通用文檔參考。

      沒有參數, 列出所有的頁面

      info 頁面的結構就像一個網站

      每一頁分為“節點”

      鏈接節點之前 *

      info [ 命令 ]     

    導航info頁

     方向鍵,PgUp ,PgDn  導航

     Tab鍵   移動到下一個鏈接

     d 顯示主題目錄

     Home  顯示主題首部

     Enter進入  選定鏈接

     n/p/u/l  進入下/ 前/ 上一層/ 最后一個鏈接

     s文字  文本搜索

     q退出 info

    通過本地文檔獲取幫助

    點擊“系統”-> “文檔”:提供的官方使用指南和發行注記

    /usr/share/doc 目錄

      多數安裝了的軟件包的子目錄, 包括了這些軟件的相關原理說明

      不適合其它地方的文檔的位置

        配置文件范例

        HTML/PDF/PS  格式的文檔

        授權書詳情

    

    通過在線文檔獲取幫助

     第三方程序官方文檔

     通過發行版官方的文檔光盤或網站可以獲得

       安裝指南

       部署指南

       虛擬化指南

       紅帽知識庫和官方在線文檔

        http://kbase.redhat.com

        http://www.redhat.com/docs

        http://access.redhat.com

    

    紅帽全球技術支持服務

      rhn.redhat.com 或者本地衛星服務器/ 代理服務器

        基于網絡管理的機器

        RHN 代理服務器為RHN 流量提供緩存

        RHN 衛星服務器提供自主的RHN

      RHN 賬戶

        為及其注冊和基于網絡管理的RHN 用戶

        用于系統自動驗證的系統ID

      sosreport

    收集所有系統上的日志信息的工具,并自動打成壓縮包,方便技術支持人員和紅帽全球支持提供分析問題的依據

    

    網站和搜索

       http://tldp.org

       http://www.slideshare.net

       http://www.google.com

        Openstack filetype:pdf

        rhca site:redhat.com/docs


五、命令歷史

   

命令行歷史

 保存你輸入的命令歷史??梢杂盟鼇碇貜蛨绦忻?/p>

 登錄shell 時,會讀取命令歷史文件中記錄下的命令

             ~/.bash_history

 登錄進shell 后新執行的命令只會記錄在緩存中;這些命令會用戶退出時“追加”至命令歷史文件中

    重復前一個命令,有4 種方法:

    使用PgUp\PgDn上方向鍵,并回車執行。

     輸入!!   并回車執行。

    輸入!-1   并回車執行。

    按Ctrl+p  并回車執行。

     ! 字符串: 重復前一個以“字符串”開頭的命令

     !num: 按照history 命令輸出中的序號重復對應命令

     !? 字符串: 重復前一個包含abc 的命令

     !-n : 重復n個命令之前的那個命令

    命令行歷史

      使用up(向上)和down(向下)鍵來上下瀏覽從前輸入

    的命令

      鍵入ctrl-r來在命令歷史中搜索命令

     (reverse-i-search )`’: 

      要重新調用前一個命令中最后一個參數:

     !$ 表示

     Esc, . (點擊Esc鍵后松開,然后點擊 . 鍵)

     Alt+ . (按住Alt鍵的同時點擊 . 鍵)   

 調用歷史參數

#CAMMOND !^    利用上一個命令的第一個選項做CAMMOND的選項

#CAMMOND !$    利用上一個命令的最后一個選項做CAMMOND的選項

#CAMMOND !*    利用上一個命令的全部選項做CAMMOND的選項

#CAMMOND !:n    利用上一個命令的第n個選項做CAMMOND選項

      !n:^    調用第n 條命令的第一個 參數

     !n:$    調用第n 條命令的最后一個 參數

     !m:n    調用第m 條命令的第n個參數

     !n:*    調用第n 條命令的所有     

    !string:^  以 從命令歷史中搜索以string開頭的命令,并獲取它的第一個參數

    !string:$  以 從命令歷史中搜索以string開頭的命令, 并獲取它的最后一個參數

    !string:n  以 從命令歷史中搜索以string開頭的命令,并獲取它的第n個參數

    !string:*  以 從命令歷史中搜索以string開頭的命令,并獲取它的所有參數

六、命令history

  #history  顯示當前歷史列表

history [-c] [-d offset] [n]

history -anrw [filename]

history -ps arg [arg…]

-c:  清空命令歷史

-d:  刪除歷史中指定的命令;

#:   顯示最近的# 條歷史

-a:  追加本次會話新執行的命令歷史列表至歷史文件

-n:  讀歷史文件中未讀過的行到歷史列表

-r:  讀歷史文件附加到歷史列表

-w:  保存歷史列表到指定的歷史文件

-p:  展開歷史參數成多個行(執行命令),但不存在歷史列表中

-s:  展開歷史參數成一行(不執行命令),附加在歷史列表后(偽造執行過程)

  history命令最適合與歷史參數配合使用

命令歷史相關環境變量

HISTSIZE :命令歷史記錄的條數;默認為1000

HISTFILE :指定歷史文件,默認為~/.bash_history; ;

HISTFILESIZE :命令歷史文件記錄歷史的條數;默認為1000

HISTTIMEFORMAT=“%F %T“ 顯示命令歷史時格式前面增加時間 

HISTIGNORE=“str1:str2:… “  忽略有string1,string2 關鍵字歷史

控制命令歷史的記錄方式:

     環境變量:HISTCONTROL

ignoredups :忽略重復的命令;連續且相同方為“重復”

ignorespace :忽略所有以空白開頭的命令

ignoreboth :ignoredups, ignorespace  等同于這兩者

erasedups: 刪除重復命令  

      HISTCONTROL="str1:str2:… "  可以多選項eg:HISCONTROL="ignoreboth:erasedups"

export  變量名=" 值“

  命令歷史變量配置信息存放在 /etc/profile 或 ~/.bash_profile,若要配置信息永久有效則,寫入全局(對所有用戶)環境變量或特定用戶環境變量里

七、快捷鍵

     

Tab鍵

命令補全

內部命令:

外部命令:bash 根據PATH 環境變量定義的路徑,自左而右在每個路徑搜尋以給定命令名命名的文件,第一次找到的命令即為要執行的命令

用戶給定的字符串只有一條惟一對應的命令,直接補全,否則,再次Tab 會給出列表

路徑補全

把用戶給出的字符串當做路徑開頭,并在其指定上級目錄下搜索以指定的字符串開頭的文件名

如果惟一:則直接補全

否則:再次Tab 給出列表

注意:在centos7以前版本只能補全 命令 路徑;而centos7以后可以進行選項參數補全了!


bash 的快捷鍵

Ctrl+l  清屏,相當于clear 命令

Ctrl+c  取消命令的執行

Ctrl-a  會移動到命令行的最前面

Ctrl-e  會移動到命令行的最后面

Ctrl-u  會刪除到行首

Ctrl-k  會刪除到行尾

arrow ctrl-b ctrl-f 會向左或向右移動一個字符

Esc-b 左移一個單詞

Esc-f 右移一個單詞

gnome-terminal圖形界面

     應用程序-> 附件-> 終端

  支持多個“標簽”shell 的圖形化終端模擬器

Ctrl-Shift-t 創建一個標簽頁

Ctrl-PaUp/PgUn  切換到下一個/ 前一個標簽頁

Ctrl-Shift-c  復制選中的文本

Ctrl-Shift-v 把文本粘帖到提示符后

原創文章,作者:NameLess,如若轉載,請注明出處:http://www.www58058.com/28105

(0)
NameLessNameLess
上一篇 2016-08-03
下一篇 2016-08-03

相關推薦

  • GNU awk基礎

    awk介紹 awk:Aho, Weinberger, Kernighan,報告生成器,格式化文本輸出 有多種版本:New awk(nawk),GNU awk( gawk) gawk:模式掃描和處理語言 基本用法: awk [options] ‘program’ var=value file… awk [options] -f programfile var=…

    Linux干貨 2018-01-01
  • Redis基于Sentinel哨兵高可用方案

    下載最新redis版本,當前最新版本為  2.8.19  2014-12-30 安裝redis 首頁地址:http://redis.io/ 最新穩定版下載地址: http://download.redis.io/releases/redis-2.8.19.tar.gz # tar -xvf redis-2.8.19.tar.gz # cd…

    2015-03-03
  • N26-第二周

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。(盜圖了,哈哈哈) 文件查看類命令:cat, tac, head, tail, more, less,touch    cat 查看文件內容   tac命令   反向查看文件內容  注:可對照上圖 分屏查看命令:more  …

    Linux干貨 2017-01-07
  • gitlab-ce并發超過30引起ip被封1小時的問題

    系統環境描述 System information System:     Ubuntu 14.04 Current User:   git Using RVM:  no Ruby Version: …

    Linux干貨 2015-09-06
  • Jerry的學習計劃/目標/宣言

    學習計劃 按照班主任給的計劃進度來,多動手做實驗。 目標 勇敢做自己,做更好的自己 宣言 能不能成為高富帥,日后是否能愉快地裝逼,就看這半年!

    Linux干貨 2016-10-24
欧美性久久久久