<button id="ssm6u"><optgroup id="ssm6u"></optgroup></button>
  • 跳轉至

    如何查詢指令的使用手冊

    0. 概要

    本期通過一個解壓tar.gz文件的需求, 給大家展示了, 如何查詢指令, 如何查詢指令方法的過程. 過程如下

    • 借助搜索引擎, 查找實現需求的相關指令

    • 借助man --help去查看指令的幫助文檔, 了解每個選項的含義及使用發法.

    另外也給大家推薦了另外一個查詢工具cheat 簡單易用. 當然大家也可以使用紙質的cheatsheet, 貼在桌子邊上, 以便及時查閱.

    1. 導言

    linux中命令行實在太多了, 實際上即便使用了三年左右的linux, 所會的linux指令跟linux底層的知識, 也只知皮毛. (日常使用是夠用的). 如果我每個指令都去講一下, 不知道啥時候這系列教程才能寫完.想做的是教你萬人敵, 授人以道, 告訴你命令行如何查閱, 如何整理自己的知識結構, 以便你可以做到快速提升. 項羽

    舉例來講, ls指令可能就有幾十種用法, 我們不可能去全部記憶. 本身我的記性也不太好, 更不愿意去記住那么多命令行. 那我們如何解決這個問題呢? 這里就要教大家如何搜索指令, 如何查閱手冊.

    2. 先丟給你一個文件

    丟給你一個.gz格式的文件(后綴為 .tar.gz 或者.tgz) 我也不告訴你這個格式的文件是干啥的. 就告訴你里面有幾張你想看的圖片, 嗯, 不再提示了, 萌萌的臉.

    ? 如何獲取

    我把這個文件上傳到我的云上了.

    http://osi7hqeow.bkt.clouddn.com/img-package.tar.gz

    你如果想獲取的話, 就需要使用wget命令. wget是一個沒有交互的網絡下載器.

    打開終端輸入指令

    wget http://osi7hqeow.bkt.clouddn.com/img-package.tar.gz
    

    下載過程

    wget-tar-gz-file.png

    于是這個名叫img-package.tar.gz的文件就下載到了你的本地.

    現在的需求是, 讓你打開它.查看里面的圖片.

    meng-bi-lian.jpg

    3. 搜索引擎-不會就搜

    很多時候, 我們想實現一個功能, 比如說使用命令行解壓一個tar.gz后綴的文件. tar.gz后綴的文件, 我之前并沒有接觸過好嘛, 更別說知道具體的指令了, 我甚至有可能根本就不知道tar.gz是一種壓縮格式的文件.

    第一步-搜索什么是tar.gz格式

    這個時候我們就帶著這個疑惑去問一下谷歌(你得有個好梯子)或者百度(度娘), 搜索對應的關鍵詞. 那么在Google搜索下面的這個詞條

    linux tar.gz 后綴 文件
    

    ps: 如何選擇詞條最能夠體現一個人信息檢索的能力.

    tar-gz-google-result

    太棒了,通過前面幾條搜索結果, 我們知道了tar.gz格式是一種壓縮格式.

    以·tar.gz為后綴的文件是一種壓縮文件,在Linux和macOS下常見,Linux和macOS都可以直接解壓使用這種壓縮文件。
    

    第二步-搜索如何解壓tar.gz格式的文件

    接下來我們就要去搜索如何解壓這種格式的文件對吧?

    接下來我們在Google中繼續搜索.

    linux  解壓tar.gz 格式 文件
    

    tar-google-result.png

    好處是, 基本上你遇到的問題或者需求, 別人肯定都遇到過, 網上有很多大神寫的博客. 跟著博客來, 有時候就可以解決問題.

    我們知道了 tar.gz 格式需要使用tar指令來解壓.

    如果你運氣好的話, 你還可以知道tar解壓tar.gz的命令行是

    [[email protected] Desktop]# tar -xzvf fcitx-3.4.2.tar.gz
    

    如果沒找到的話, 或者你想知道-xzvf每個選項都代表啥意思的話, 你的下一個搜索詞條就應該是?

    看你自己嘍

    linux tar解壓指令 使用方法 
    

    閱讀博客的時候的坑

    閱讀博客其實也有不太好的地方.

    不系統,信息不全 通過博客獲取信息不系統, 有時候作者只是告訴你命令行是啥, 并沒有告訴你含義或者具體每個參數對應的意思.(極少數人才會像這么耐心).

    時效性 linux有很多系統發行版本, 不同發行版本也有自己的版本. 每個操作系統的系統配置,預裝軟件不同, 很有可能放到你這, 就跑不起來.

    舉個例子CentOS防火墻在6及其之前默認的軟件是iptables, CentOS 7的時候默認就變成了firewall. 所以你按照iptables的指令去配置, 當然不會成功.

    小知識充電站: CentOS是linux的一個發行版, 多用于服務器的操作系統.

    這里只是告訴大家, 別人配好的, 你跟著做沒配好, 這很正常.

    危險不可逆的操作

    也有時候作者會瞎寫, 跟著他亂配一通之后問題也沒解決. 大家在做一些不可逆的危險操作的時候, 一定不要盲目的照著別人的命令行輸入.

    最好是你知道每個指令的作用再下手.

    4. 原生的linux自帶的幫助工具命令行

    我們之前提到了, 博客往往不系統. 我們如果想了解詳細的使用方法, 就要去查閱對應的文檔. 給大家介紹幾個幫助指令.

    4.1 whatis-查詢功能簡介

    whatis + 指令名 就可以獲取該指令的簡要介紹.

    [email protected] ~/Desktop> whatis tar
    tar (5)              - format of tape archive files
    tar (1)              - an archiving utility
    

    這里顯示, tar是文件歸檔格式, 同時也是一個文件歸檔工具.

    4.2 man-linux手冊查詢

    顯然,我們只知道whatis是不夠用的, 我們還想知道how to use it, 這里我們就要借助man指令.

    man 的全稱是mannual的含義. 作為linux操作系統的手冊,

     man is the system's manual pager.  
    
    我們可以通過man + 可執行指令的方式獲取該指令的所有方法, 傳入的參數等. 我們在命令行中敲入
    man tar
    

    tar-man-01.png

    我們按向下箭頭,可以一直翻閱說明. 可以看到功能介紹description

    tar-man-02.png

    GNU tar is an archiving program designed to store multiple files in a single file (an archive), and to manipulate  such  archives.  
    
    通過閱讀DESCRIPTION我們知道了:

    tar 是一個歸檔程序. 被用于將多個文件保存在單個文件中(一個存檔文件), 并對這種存檔文件進行操作.

    接下來我們還可以向下翻, 就可以看到Option Mode 選項模式所代表的含義及其用法.

    tar-man-03.png

    例如--delete這個選項所代表的含義是

    Delete  from the archive.  The arguments supply names of the archive members to be removed.  At least one argument must be given.
    
    --delete這個選項是從歸檔文件中刪除. 這個語句后面跟要從歸檔文件中刪除的文件名.
    
    This option does not operate on compressed archives.  There is no short option equivalent.
    這個選項不能在壓縮過的歸檔文件中操作. 沒有等效的短選項.(類似-d這種, 因為已經被別的占據了)
    

    按q鍵退出幫助文檔瀏覽

    man指令還可以用于查詢其他信息. 它從1-9一共劃分了9個功能區域, 如下:

    1   Executable programs or shell commands
    
    2   System calls (functions provided by the kernel)
    
    3   Library calls (functions within program libraries)
    
    4   Special files (usually found in /dev)
    
    5   File formats and conventions eg /etc/passwd
    
    6   Games
    
    7   Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
    
    8   System administration commands (usually only for root)
    
    9   Kernel routines [Non standard]
    

    我們可以使用

    man + 信息所在區域編號(1-9) + 要查詢的字段
    
    來查詢相關的信息.

    例如我們可以通過man函數來查閱C的函數說明.

    man 3 printf
    
    然后我們就獲取了所有printf相關的文檔介紹

    man-c-lib-printf.png

    4.3 --help-工具小幫手

    大多數GNU工具都自帶的--help選項(Option Mode), 用來顯示工具的一些信息,用法

    我們可以通過

    指令 + --help
    
    的方式獲取幫助信息. 相比較man指令來講, --help沒有man獲取的信息詳細, 主要側重傳入參數(option mode的介紹與列舉)

    gnu-tar-help.png

    5. cheatsheet - 合法小抄

    介紹了man指令跟help指令之后, 如果跟著一起動手做的話, 就會發現幫助文檔超級冗長. 我們本來想實現一個簡單的功能, 卻被丟了一臉文檔. 這個時候我們就可以使用cheatsheet.

    cheatsheet直譯過來是作弊紙的意思.實際上它在工程領域是速查手冊的意思. 手冊上只有簡單的用法. 這個速查手冊可以可以自己制作, 也可以直接從網上下載下來別人整理的. 打印下來, 放在桌邊. 當你遇到一個需求的時候, 低頭馬上可以看到命令行. 時間長了也就記住了.

    這里要給大家分享的是一個中文版本的Unix/Linux Cheatsheet

    cheatsheet

    Cheatsheet 英文版下載鏈接

    6. cheat 命令行工具 <推薦>

    前面給大家介紹了紙質的cheatsheet, 其實終端上也有類似的軟件可以供我們調用.

    6.1 什么是cheat?

    cheat是在GNU通用公共許可證下,為Linux命令行用戶發行的交互式備忘單應用程序。它提供顯示Linux命令使用案例,包括該命令所有的選項和簡短但尚可理解的功能。 相比較之前提到的manhelp函數給出的冗長幫助信息, cheat的特點就是簡要, 給你提供必要的信息與演示示例.

    根據2/8法則, 20%的命令行(或者命令行的一些選項)可以滿足我們80%的需求, 所以還是蠻喜歡cheat的.

    cheat的github代碼倉庫

    下面這個圖片是cheat的官網上的一個漫畫, 嘿嘿, 不知道你能不能看懂, 看懂的話, 可以在文章下方留言哦.

    cheetsheet

    6.2 安裝cheat

    安裝方式

    前提是你的linux系統已經裝好了pythonpip

    sudo pip install cheat 
    

    cheat的pip安裝過程

    [email protected] ~/Desktop> sudo pip install cheat
    Collecting cheat
      Downloading http://mirrors.aliyun.com/pypi/packages/32/b6/b85a29d865323adc776726845bbb74d0629bd8d46e4619ec42d5fe191734/cheat-2.2.2.tar.gz (66kB)
    
        100% |████████████████████████████████| 71kB 2.2MB/s 
    Collecting docopt>=0.6.1 (from cheat)
      Downloading http://mirrors.aliyun.com/pypi/packages/a2/55/8f8cab2afd404cf578136ef2cc5dfb50baa1761b68c9da1fb1e4eed343c9/docopt-0.6.2.tar.gz
    Requirement already satisfied: pygments>=1.6.0 in /usr/lib/python3.6/site-packages (from cheat)
    Building wheels for collected packages: cheat, docopt
      Running setup.py bdist_wheel for cheat ... done
      Stored in directory: /root/.cache/pip/wheels/ef/0c/76/6515364d1ba8f029407a90cfd7c198b33865537414059eb05f
      Running setup.py bdist_wheel for docopt ... done
      Stored in directory: /root/.cache/pip/wheels/81/7a/3b/9f1ec9da9d3d4116a4ad1ab9bc007239ef5c1131793d825567
    Successfully built cheat docopt
    Installing collected packages: docopt, cheat
    Successfully installed cheat-2.2.2 docopt-0.6.2
    

    6.3 cheat使用演示樣例

    我們使用cheat指令的時候, cheat + 你要查詢的指令

    這里我們用tar指令為例(linux中的文件壓縮指令) 演示一下cheat指令的使用方法.

    [email protected] ~/Desktop> cheat tar
    # To extract an uncompressed archive:
    tar -xvf /path/to/foo.tar
    
    # To create an uncompressed archive:
    tar -cvf /path/to/foo.tar /path/to/foo/
    
    # To extract a .gz archive:
    tar -xzvf /path/to/foo.tgz
    
    # To create a .gz archive:
    tar -czvf /path/to/foo.tgz /path/to/foo/
    
    # To list the content of an .gz archive:
    tar -ztvf /path/to/foo.tgz
    
    # To extract a .bz2 archive:
    tar -xjvf /path/to/foo.tgz
    
    # To create a .bz2 archive:
    tar -cjvf /path/to/foo.tgz /path/to/foo/
    
    # To extract a .tar in specified Directory:
    tar -xvf /path/to/foo.tar -C /path/to/destination/
    
    # To list the content of an .bz2 archive:
    tar -jtvf /path/to/foo.tgz
    
    # To create a .gz archive and exclude all jpg,gif,... from the tgz
    tar czvf /path/to/foo.tgz --exclude=\*.{jpg,gif,png,wmv,flv,tar.gz,zip} /path/to/foo/
    
    # To use parallel (multi-threaded) implementation of compression algorithms:
    tar -z ... -> tar -Ipigz ...
    tar -j ... -> tar -Ipbzip2 ...
    tar -J ... -> tar -Ipixz ...
    

    看著也舒服, 用起來也方便.

    直接就告訴我解壓.gz指令是

    tar -xzvf ./img-package.tar.gz
    

    -xzvf 指對xxx.tar.gz 解壓成 xxx/

    解壓完成, 終于可以查看給你的圖片包了, 是不是很興奮.

    [email protected] ~/D/f/QuickStart快速入手> tar -xzvf img-package.tar.gz 
    ./gnu-tar-help.png
    ./xiangyu.jpg
    

    6.4 cheat的其他配置

    關于cheat的自動補全等配置, 大家可以參考下面這篇文章. Cheat—— 給Linux初學者和管理員一個終極命令行"備忘單"

    7. 的本章總結

    本期通過一個解壓tar.gz文件的需求, 給大家展示了, 如何查詢指令。 過程如下

    • 借助搜索引擎, 查找實現需求的相關指令

    • 借助man --help去查看指令的幫助文檔, 了解每個選項的含義及使用發法.

    另外也給大家推薦了另外一個查詢工具cheat 簡單易用. 當然大家也可以使用紙質的cheatsheet, 貼在桌子邊上, 以便及時查閱.


    韩国精品无码一区二区三区,精品无码一区二区三区AV,欧洲丰满美熟女乱又伦AV,亚洲午夜久久久影院伊人