Linux 運維必會的150個常用命令,你都會用嗎?

Linux 運維必會的150個常用命令,你都會用嗎?

Linux 維運必會的150個常用命令,你都會用嗎?


資料來源: https://mp.weixin.qq.com/s/2Llf48pMY3H8fXfCKviIaQ


線上查詢及幫助命令 (2 個)

    man,查看命令幫助,命令的詞典,更複雜的還有 info,但不常用。

    help,查看 Linux 內置命令的幫助,比如 cd 命令。


檔和目錄操作命令 (18 個)

    ls,全拼 list,功能是列出目錄的內容及其內容屬性資訊。

    cd,全拼 change directory,功能是從當前工作目錄切換到指定的工作目錄。

    cp,全拼 copy,其功能為複製檔或目錄。

    find,查找(尋找/搜尋)的意思,用於查找(尋找/搜尋)目錄及目錄下的檔。

    mkdir,全拼 make directories,其功能是創建(建立/新增)目錄。

    mv,全拼 move,其功能是移動或重命名(更名)檔。

    pwd,全拼 print working directory,其功能是顯示當前工作目錄的絕對路徑。

    rename,用於重命名(更名)文件/檔案。

    rm,全拼 remove,其功能是刪除一個或多個檔或目錄。

    rmdir,全拼 remove empty directories,功能是刪除空目錄。

    touch,創建(建立/新增)新的空檔,改變已有檔的時間戳記屬性。

    tree,功能是以樹形結構顯示目錄下的內容。

    basename,顯示檔案名或目錄名。

    dirname,顯示檔或目錄路徑。

    chattr,改變檔的擴展屬性。

    lsattr,查看檔擴展屬性。

    file,顯示檔的類型。

    md5sum,計算和校驗文件/檔案的 MD5 值。


查看檔及內容處理命令(21 個)

    cat,全拼 concatenate,功能是用於連接多個檔並且列印到螢幕輸出或重定向到指定檔中。

    tac,tac 是 cat 的反向拼寫,因此命令的功能為反向顯示檔內容。

    more,分頁顯示檔內容。

    less,分頁顯示檔內容,more 命令的相反用法。

    head,顯示檔內容的頭部。

    tail,顯示檔內容的尾部。

    cut,將檔的每一行按指定分隔符號分割並輸出。

    split,分割檔為不同的小片段。

    paste,按行合併檔內容。

    sort,對檔的文本內容排序。

    uniq,去除重複行。oldboy

    wc,統計檔的行數、單詞數或位元組數。

    iconv,轉換檔的編碼格式。

    dos2unix,將 DOS 格式檔轉換成 UNIX 格式。

    diff,全拼 difference,比較文件/檔案的差異,常用於文字檔。

    vimdiff,命令列視覺化文件/檔案比較工具,常用於文字檔。

    rev,反向輸出檔內容。

    grep/egrep,過濾字串,三劍客老三。

    join,按兩個檔的相同欄位合併。

    tr,替換或刪除字元。

    vi/vim,命令列文字編輯器。


檔案壓縮及解壓縮命令(4 個)

    tar,打包壓縮。oldboy

    unzip,解壓文件/檔案。

    gzip,gzip 壓縮工具。

    zip,壓縮工具。


資訊顯示命令(11 個)

    uname,顯示作業系統相關資訊的命令。

    hostname,顯示或者設置當前系統的主機名稱。

    dmesg,顯示開機資訊,用於診斷系統故障。

    uptime,顯示系統執行時間及負載。

    stat,顯示檔或檔案系統的狀態。

    du,計算磁碟(硬碟)空間使用情況。

    df,報告檔案系統磁碟(硬碟)空間的使用情況。

    top,即時顯示系統資源使用情況。

    free,查看系統記憶體。

    date,顯示與設置系統時間。

    cal,查看日曆等時間資訊。


搜索文件/檔案命令(4 個)

    which,查找(尋找/搜尋)二進位命令,按環境變數 PATH 路徑查找(尋找/搜尋)。

    find,從磁片遍歷查找(尋找/搜尋)檔或目錄。

    whereis,查找(尋找/搜尋)二進位命令,按環境變數 PATH 路徑查找(尋找/搜尋)。

    locate,從資料庫 (/var/lib/mlocate/mlocate.db) 查找(尋找/搜尋)命令,使用 updatedb 更新庫。


用戶(使用者帳號)管理命令(10 個)

    useradd,添加用戶(使用者帳號)。

    usermod,修改系統已經存在的使用者屬性。

    userdel,刪除用戶(使用者帳號)。

    groupadd,添加用戶(使用者帳號)組。

    passwd,修改使用者密碼。

    chage,修改使用者密碼有效期限。

    id,查看用戶(使用者帳號)的 uid,gid 及歸屬的用戶(使用者帳號)組。

    su,切換用戶(使用者帳號)身份。

    visudo,編輯 / etc/sudoers 文件/檔案的專屬命令。

    sudo,以另外一個用戶(使用者帳號)身份(默認 root 用戶(使用者帳號))執行事先在 sudoers 檔允許的命令。


基礎網路操作命令(11 個)

    telnet,使用 TELNET 協定遠端登入。

    ssh,使用 SSH 加密協定遠端登入。

    scp,全拼 secure copy,用於不同主機之間複製檔。

    wget,命令列下載檔案。

    ping,測試主機之間網路的連通性。

    route,顯示和設置 linux 系統的路由表。

    ifconfig,查看、配置、啟用或禁用網路介面的命令。

    ifup,啟動網卡。

    ifdown,關閉網卡。

    netstat,查看網路狀態。

    ss,查看網路狀態。


深入網路操作命令(9 個)

    nmap,網路掃描命令。

    lsof,全名 list open files,也就是列舉系統中已經被打開的檔。

    mail,發送和接收郵件。

    mutt,郵件管理命令。

    nslookup,互動式查詢互聯網 DNS 伺服器的命令。

    dig,查找(尋找/搜尋) DNS 解析過程。

    host,查詢 DNS 的命令。

    traceroute,追蹤資料傳輸路由狀況。

    tcpdump,命令列的抓包(封包)工具。


有關磁片/磁碟與檔案系統的命令(16 個)

    mount,掛載檔案系統。

    umount,卸載檔案系統。

    fsck,檢查並修復 Linux 檔案系統。

    dd,轉換或複製檔。

    dumpe2fs,匯出 ext2/ext3/ext4 檔案系統信息。

    dump,ext2/3/4 檔案系統備份工具。

    fdisk,磁碟(硬碟)分割命令,適用於 2TB 以下磁碟(硬碟)分割。

    parted,磁碟(硬碟)分割命令,沒有磁片大小限制,常用於 2TB 以下磁碟(硬碟)分割。

    mkfs,格式化創建(建立/新增) Linux 檔案系統。

    partprobe,更新內核的硬碟分區表資訊。

    e2fsck,檢查 ext2/ext3/ext4 類型檔案系統。

    mkswap,創建(建立/新增) Linux 交換分區。

    swapon,啟用交換分區。

    swapoff,關閉交換分區。

    sync,將記憶體緩衝區內的資料寫入磁片。

    resize2fs,調整 ext2/ext3/ext4 檔案系統大小。


系統許可權及使用者授權相關命令(4 個)

    chmod,改變檔或目錄許可權。

    chown,改變檔或目錄的屬主和屬組。

    chgrp,更改檔用戶(使用者帳號)組。

    umask,顯示或設置許可權遮罩。


查看系統使用者登陸資訊的命令(7 個)

    whoami,顯示當前有效的用戶(使用者帳號)名稱,相當於執行 id -un 命令。

    who,顯示目前登錄系統的使用者資訊。

    w,顯示已經登陸系統的使用者清單,並顯示使用者正在執行的指令。

    last,顯示登入系統的使用者。

    lastlog,顯示系統中所有使用者最近一次登錄資訊。

    users,顯示當前登錄系統的所有使用者的使用者列表。

    finger,查找(尋找/搜尋)並顯示使用者資訊。


內置命令及其它(19 個)

    echo,列印變數,或直接輸出指定的字串

    printf,將結果格式化輸出到標準輸出。

    rpm,管理 rpm 包的命令。

    yum,自動化簡單化地管理 rpm 包的命令。

    watch,週期性的執行給定的命令,並將命令的輸出以全屏方式顯示。

    alias,設置系統別名。

    unalias,取消系統別名。

    date,查看或設置系統時間。

    clear,清除螢幕,簡稱清屏。

    history,查看命令執行的歷史紀錄。

    eject,彈出光碟機。

    time,計算命令執行時間。

    nc,功能強大的網路工具。

    xargs,將標準輸入轉換成命令列參數。

    exec,調用並執行指令的命令。

    export,設置或者顯示環境變數。

    unset,刪除變數或函數。

    type,用於判斷另外一個命令是否是內置命令。

    bc,命令列科學計算器


系統管理與性能監視命令 (9 個)

    chkconfig,管理 Linux 系統開機啟動項。

    vmstat,虛擬記憶體統計。

    mpstat,顯示各個可用 CPU 的狀態統計。

    iostat,統計系統 IO。

    sar,全面地獲取系統的 CPU、運行佇列、磁片 I/O、分頁(交換區)、記憶體、 CPU 中斷和網路等性能資料。

    ipcs,用於報告 Linux 中進程間通信設施的狀態,顯示的資訊包括消息清單、共用記憶體和信號量的資訊。

    ipcrm,用來刪除一個或更多的訊息佇列、信號量集或者共用記憶體標識。

    strace,用於診斷、調試 Linux 用戶(使用者帳號)空間跟蹤器。我們用它來監控使用者空間進程和內核的交互,比如系統調用、信號傳遞、進程狀態變更等。

    ltrace,命令會跟蹤進程的庫函式呼叫, 它會顯現出哪個庫函數被調用。


關機 / 重啟 / 登出和查看系統資訊的命令(6 個)

    shutdown,關機。

    halt,關機。

    poweroff,關閉電源。

    logout,退出當前登錄的 Shell。

    exit,退出當前登錄的 Shell。

    Ctrl+d,退出當前登錄的 Shell 的快速鍵。


進程(程式/軟體)管理相關命令(15 個)

    bg,將一個在後臺暫停的命令,變成繼續執行  (在後臺執行)。

    fg,將後臺中的命令調至前臺繼續運行。

    jobs,查看當前有多少在後臺運行的命令。

    kill,終止進程。

    killall,通過進程名終止進程。

    pkill,通過進程名終止進程。

    crontab,定時任務命令。

    ps,顯示進程的快照。

    pstree,樹形顯示進程。

    nice/renice,調整程式運行的優先順序。

    nohup,忽略掛起信號運行指定的命令。

    pgrep,查找(尋找/搜尋)匹配條件的進程。

    runlevel,查看系統當前運行級別。

    init,切換運行級別。

    service,啟動、停止、重新開機和關閉系統服務,還可以顯示所有系統服務的當前狀態。

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *