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


五、命令歷史

   

命令行歷史

 保存你輸入的命令歷史。可以用它來重復執行命令

 登錄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 19:05
下一篇 2016-08-03 19:06

相關推薦

  • 高級文件系統管理

    高級文件系統管理 一、如何創建新的swap分區  答:1.在/dev/sdc上創建新的分區。并使得ID為82的linux swap;類型。   2.創建文件系統 mkswap  -L  SWAP_SDC1  /dev/sdc1     3.在/etc/fstab中進行修改   4…

    Linux干貨 2016-08-30
  • MariaDB日志

    MariaDB日志 查詢日志:query log; 慢查詢日志:slow query log 查詢時長超出指定界限。 錯誤日志:error log 二進制日志:binary log;此中存儲要發生改變或潛在發生改變的語句。 中繼日志:reley log 事務日志:transaction log 1、查詢日志 記錄查詢語句,日志存儲位置:一般不開啟。 文件:f…

    Linux干貨 2016-11-20
  • LVS實現

    一 LVS-NAT實驗前的準備 操作系統:CentOS 6.7 64位 配置防火墻,iptables –F 清理防火墻規則或者關閉iptables 關閉SELINUX, setenforce 0  #立即生效(實際是寬容模式) Director ip:172.16.2.1  VIP:192.168.1.8 RS1 ip:172.16.2.…

    Linux干貨 2016-12-29
  • Linux的用戶組和權限(二)

      一、1.passwd 設置密碼(類似usermod的用法)       passwd[OPTIONS] UserName:          修改指定用戶的密碼,僅root用戶有權限       …

    Linux干貨 2016-08-08
  • DNS的基本配置、子域授權與bind編譯(第十八九天)

        DNS( Domain Name System)是“域名系統”的英文縮寫,是一種組織成域層次結構的計算機和網絡服務命名系統,它用于TCP/IP網絡,它所提供的服務是用來將主機名和域名轉換為IP地址的工作。     DNS利用類似于樹形目錄的結構,將主機名的管理分配在不同層…

    Linux干貨 2016-06-12
  • vim小結

    1. 簡介 Vim(Vi[Improved])編輯器是功能強大的跨平臺文本文件編輯工具,繼承自Unix系統的Vi編輯器,支持Linux/Mac OS X/Windows系統,利用它可以建立、修改文本文件。進入Vim編輯程序,可以在終端輸入下面的命令: $vim [filename] 其中filename是要編輯器的文件的路徑名。如果文件不存在,它將…

    Linux干貨 2016-08-12
欧美性久久久久