林克的小本本之——記一些基礎的linux命令

查看shell

  • cat /etc/shells 查看系統支持的shell
  • echo $SHELL 查看目前正在使用的shell

快捷鍵

  • Ctrl+a 跳到行首
  • Ctrl+e 跳到行尾
  • Ctrl+u 刪除光標至行首的內容
  • Ctrl+k 刪除光標至行尾的內容
  • Ctrl+<-- 光標跳到離本身最近的一個單詞前
  • Ctrl+l 清屏

命令替換

把命令中的某個子命令替換爲其結果html

  • $(COMMAND) (推薦)
  • 'COMMAND'

命令行展開

  • ~ 展開爲用戶的家目錄
  • ~USERNAME 展開爲USERNAME用戶的家目錄
  • {} 可承載一個以逗號分隔的列表,並將其展開爲多個目錄,例如
    • /tmp/{a,b} = /tmp/a, /tmp/b
    • /tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi

文件名通配

  • * 匹配任意長度的任意字符
  • ? 匹配任意單個字符
  • [] 匹配任意範圍內的單個字符
  • [^] 匹配任意範圍外的任意單個字符
    • [abc] [a-m] [0-9]
    • [[:space:]] 空白字符
    • [[:punct:]] 標點符號
    • [[:lower:]] 小寫字母
    • [[:upper:]] 大寫字母
    • [[:alpha:]] 大小寫字母
    • [[:digit:]] 數字
    • [[:alnum:]] 數字和大小寫字母

環境變量

  • PATH 命令搜索路徑(系統會從這個路徑的文件裏搜索命令,若是把這個改了,頗有可能會致使沒法使用部分命令)
  • HISTSIZE 命令歷史緩衝區大小
  • SHELL 當前shell

命令別名

僅在當前shell生命週期內有效node

  • alias CMDALIAS='COMMAND [options] [arguments]'

命令類型

  • linux分爲兩種命令
    • 內部命令,shell內置
    • 外部命令,在文件系統下有一個與命令名稱相應的可執行文件
  • type 顯示命令類型

目錄管理

  • ls 列出目錄內容
  • 選項:
    • -l 長格式
      文件類型:
        • 普通文件(f)
      • d 目錄文件
      • b 塊設備文件(block)
      • c 字符設備文件(character)
      • l 符號連接文件(symbolic link file)
      • p 命令管道(pipe)
      • s 套接字文件(socket)
    • -h 人性化單位轉換
    • -a 顯示隱藏文件(以.開頭的文件)
    • -d 顯示目錄自身屬性
    • -i 顯示文件的inode
    • -r 逆序顯示
    • -R 遞歸顯示
  • cd 切換目錄
  • psw 查看當前所在目錄路徑
  • msdir 建立目錄
  • 選項:
    • -p 建立目錄是,若父目錄不存在則建立
    • -v 顯示目錄建立過程
  • tree 查看目錄的樹狀結構
  • 選項:
    • -d 只顯示目錄
    • -l LEVEL 指定顯示的層數
    • -P PATTERN 只顯示指定PATTERN匹配到的路徑

文件管理

  • touch 建立空文件,或修改時間戳
  • stat 查看文件或文件系統狀態
  • rm 刪除文件
  • 選項:
    • -r 遞歸刪除
    • -f 強制刪除
    • 在rm前加,即\rm也能夠起到強制刪除的做用
    • 不要手賤去刪除/bin/、/usr/等系統目錄,《Linux從刪庫到跑路》
  • cp 複製文件
  • 選項:
    • -r 遞歸複製,複製目錄必須帶
    • -a 歸檔複製,經常使用於備份
    • -p 帶權限拷貝
  • mv 移動文件
  • install 複製文件並設置屬性,經常使用於安裝或升級軟件或備份數據
    選項:
    • -m mode模式,自行設定權限
    • -o owner模式,自行設定屬主
    • -g group模式,自行設定屬組

壓縮、解壓命令

壓縮格式:gz、bz二、xz、zip、Zlinux

  • compress 壓縮後文件名爲FILENAME.Z
    • uncompress 解壓
  • gzip 壓縮後文件名爲FILENAME.gz,會刪除原文件
  • 選項:
    • -d 解壓,會刪除原文件
    • -c 輸出結果
    • -# [1-9] 指定壓縮比,默認6
  • gunzip 解壓,會刪除原文件
  • zcat 不解壓的狀況下查看文本內容
  • bzip2 壓縮後的文件名爲FILENAME.bz2,比gzip壓縮比更大,格式相近
  • 選項:
    • -d 解壓,會刪除原文件
    • -k 壓縮保留原文件
    • -# [1-9] 指定壓縮比,默認6
  • bunzip2 解壓,會刪除原文件
  • xz 壓縮後的文件名爲FILENAME.xz
  • 選項:
    • -d 解壓,會刪除原文件
    • -k 壓縮保留原文件
    • -# [1-9] 指定壓縮比,默認6
  • unxz 解壓,會刪除原文件
  • xzcat 不解壓的狀況下查看文本內容
  • zip 既歸檔又壓縮,能夠壓縮目錄,不刪除原文件
    • zip filename.zip file1 file2
    • zip filename.zip DIR/*
  • unzip 解壓,不刪除原文件
  • archive 歸檔,不壓縮
  • tar 歸檔,不壓縮(經常使用)
  • 選項:
    • -c 建立歸檔文件
    • -f file.tar 指定歸檔操做的文件
    • -x 還原歸檔
    • -cf 歸檔文件,f選項必須在歸檔後文件名前
    • -xf 解壓歸檔文件,f選項必須在歸檔前文件名前
    • -v 顯示詳細信息
    • -p 保留權限信息,只有管理員纔有此選項的使用權限
    • -C 將展開的歸檔文件保存到指定的目錄下
    • --delete 從歸檔文件中刪除文件
    • --xattrs 歸檔時保留擴展屬性信息
    • -tf 不展開歸檔,直接查看歸檔了哪些文件
    • -tvf 不展開歸檔,直接查看歸檔了哪些文件,能夠查看歸檔文件的詳細信息
    • -zcf 歸檔並調用gzip壓縮
    • -zxf 調用gzip解壓並展開歸檔
    • -jcf 歸檔並調用bzip2壓縮
    • -jxf 調用bzip2解壓並展開歸檔
    • -Jcf 歸檔並調用xz歸檔
    • -Jxf 調用xz解壓並展開歸檔

查看文本

  • cat 拼接文件內容並輸出至標準輸出,使用cat查看文件會將文件的全部內容加載至內存,因此應該避免使用cat打開巨大文件
    • -n 顯示行號
    • cat a b >> c 拼接文件內容
  • tac 連接文件並倒敘打印內容至標準輸出,和cat相似。但這個命令並無什麼卵用
  • more 全屏查看文本文件內容。只能從前日後,顯示完自動退出
  • less 全屏查看文本文件內容。能夠往前也能日後,比more高到不知道哪裏去了。推薦使用
  • 選項:
    • -N 顯示每行的行號
  • 快捷鍵:
    • /字符串:向下搜索"字符串"的功能
    • ?字符串:向上搜索"字符串"的功能
    • n:重複前一個搜索(與 / 或 ? 有關)
    • N:反向重複前一個搜索(與 / 或 ? 有關)
    • b 向後翻一頁
    • d 向後翻半頁
    • h 顯示幫助界面
    • Q 退出less 命令
    • u 向前滾動半頁
    • y 向前滾動一行
    • 空格鍵 滾動一頁
    • 回車鍵 滾動一行
    • [pagedown]: 向下翻動一頁
    • [pageup]: 向上翻動一頁
  • head 查看文本文件頭部內容,默認打印10行
    • 選項:
    • -n 指定要打印的行數,能夠是-n [NUM],也能夠是-[NUM]
  • tail 查看文本文件尾部內容
    • 選項:
    • -n 指定要打印的行數,能夠是-n [NUM],也能夠是-[NUM]

文本處理

  • cut 截取文本內容
    • 選項:
    • -d 指定字段分隔符,默認是空格
    • -f 指定要顯示的字段區域,與-d連用
      • -f 1,3 顯示1和3
      • -f 1-4 顯示1到4
    • -b 以字節分割,能夠指定要顯示的字節範圍
  • sed 基於行的過濾與轉換文本的流編輯器,能夠對字段進行替換
    • 選項:
    • -e [script] 以選項中的指定的script來處理輸入的文本文件
    • -f [script文件] 以選項中指定的script文件來處理輸入的文本文件
    • 命令:
    • a 在當前行下面插入文本。
    • i 在當前行上面插入文本。
    • c 把選定的行改成新的文本。
    • d 刪除,刪除選擇的行。
    • D 刪除模板塊的第一行。
    • s 替換指定字符
    • = 打印當前行號碼。
  • awk 基於列的文本報告工具

文本排序

  • sort 默認升序,不是按數值大小排序
    • 選項:
    • -n 根據數值大小排序
    • -r 逆序排序
    • -t 字段分隔符
    • -k 以哪一個字段爲關鍵字進行排序
    • -u 去重,排序後相同的行只顯示爲一行
    • -f 排序時忽略大小寫
  • uniq 報告重複的行
    • 選項:
    • -c 顯示文件中行的重複次數
    • -d 只顯示重複的行
    • -u 只顯示爲重複的行

文本統計

  • wc 統計
    • 選項:
    • -c 顯示字節數
    • -l 顯示行數
    • -w 顯示單詞數

系通通計

  • du 查看文件或目錄佔用的磁盤空間
    • 選項:
    • -h 人性化單位轉換
    • -s 顯示總佔用
  • df 報告文件系統磁盤空間使用狀況
    • 選項:
    • -h 人性化單位轉換
    • -i 顯示inode信息

主機名管理

  • hostname 查看或臨時修改主機名,生存期到關機前
  • hostnamectl 查看或永久修改主機名,生存期到永久

其餘

  • time 顯示命令執行花費的時間
  • clear 清屏,更推薦使用快捷鍵
  • whoami 查看當前登陸用戶,也可寫做who am i
  • w 顯示當前在線用戶並顯示其在運行的程序
  • who 查看當前在線用戶
  • which 顯示指定命令的絕對路徑
  • date 顯示或設置日期與時間
    • 選項:
    • -s 以字符串方式設置時間
    • 格式化輸出時間 +
      • %Y 年
      • %m 月
      • %d 日
      • %H 時
      • %M 分
      • %S 秒
  • cal 打印日曆
  • bc 數學運算時保留小數(不經常使用)
  • ldd 查看程序依賴
    • 二進制程序
    • 庫文件
    • 幫助文件
    • 設置文件
相關文章
相關標籤/搜索