Linux基本命令與操作

  • Shell
    • 是Linux系統中運行的一種特殊程序
    • 在用戶和內核之間充當“翻譯官”
    • 作用:接受用戶輸入的命令 → 解釋命令 → 傳遞給系統內核執行
    • 用戶登錄Linux系統時,自動加載一個shell程序
    • Bash是Linux系統中默認使用的Shell程序
      • 文件位於/bin/bash
  • Linux命令的分類
    • 注意:Linux系統將存放外部命令、程序的目錄默認添加到'搜索路徑'中當使用位於這些目錄中的外部命令時,用戶不需要指定具體的位置
  • Linux命令行的格式
    • 通用的命令行使用格式
      • 命令字 【選項】 【參數】
    • 命令字
      • 是整條命令中最關鍵的一部分
      • 唯一確定一條命令
      • 注意:Linux命令環境中,英文字符要區分大小寫
    • 選項
      • 調節命令的具體功能,決定這條命令如何執行
      • 不同的命令字使用的選項不同
      • 多個選項之間使用空格分隔
      • 若不使用選項,執行命令字的默認功能
      • 短格式選項:一般在選項前使用“-”符號引導
        • 多個單字符選項可以組合在一起使用
      • 長格式選項:一般在選項前使用“--”符號引導
    • 參數
      • 是命令字的處理對象
      • 通常情況下,可以是文件名、目錄(路徑)名或用戶名等內容
      • 個數可以是零到多個
    • 在實際使用Linux命令行的過程中,選項和參數前後順序可以顛倒,一般不會影響到命令的執行效果
  • 獲取命令幫助的方法
    • 使用help命令:查看各shell內部命令的幫助信息
      • help pwd
    • 使用--help選項:顯示對應的外部命令格式及選項等幫助信息
      • ls --help
    • 使用man手冊頁:最常用的一種在線幫助形式
      • man file
      • 全屏的文本方式顯示幫助信息,並提供交互式的操作環境
      • 可以使用的快捷鍵
        • ↑鍵、↓鍵、 #翻頁
        • page up鍵、page down鍵 #翻頁
        • Q鍵或q鍵 #推出
        • / 鍵 #搜索
        • N鍵或n鍵 #查找下一個 n下一個 N上一個
      • 將命令的man手冊頁信息保存到文本文件(管道和重定向)
        • [root@localhost~]# man ls | col -b > lshelp.txt
  • 編輯Linux命令行
    • 編輯Linux命令行的輔助操作
      • Tab鍵 # 命令或路徑的補全鍵
      • 反斜槓 \ # 換行
      • ctrl+E快捷鍵 # 光標移動到命令行尾
      • ctrl+A快捷鍵 # 光標移動到命令行首
      • ctrl+F快捷鍵 # 光標向右移動一個字符(相當於→鍵)
      • ctrl+B快捷鍵 # 光標向左移動一個字符(相當於←鍵)
      • ctrl+Insert # 複製命令行內容
      • shift+Insert # 粘貼命令行內容
      • ctrl+K快捷鍵 # 刪除(剪切)光標到行尾的字符
      • ctrl+U快捷鍵 # 刪除(剪切)光標到行首的字符
      • ctrl+L快捷鍵 # 清屏(相當於clear命令)
      • ctrl+C快捷鍵 # 取消當前編輯
  • 目錄和文件的基本操作
    • 查看以及切換目錄
      • pwd # 查看當前所在路徑
      • cd # 進入一個目錄
        • cd 目標位置 # 切換到目標位置
        • cd ~ 回到宿主目錄
        • cd 若不指定目標位置,切換到當前用戶的宿主目錄
        • cd - 返回上次執行cd命令所在目錄
        • cd .. 返回上一層
        • cd. 當前目錄
      • ls # 查看目錄(目錄裏的文件)
        • ls -a 目錄裏全部文件
        • ls -A 目錄裏全部文件(沒有. ..)
        • ls -d 查看當前目錄屬性 ls -dl
        • ls -l 目錄裏文件的大小 (單位是字節) 縮寫 ll (查看ll which ll)
        • ls -l -h 目錄裏文件的大小(單位是kb、mb) 可以簡寫爲ls -lh
        • ls -R 遞歸顯示當前目錄文件夾以及子文件夾的所有內容(不推薦用)
        • ls /etc /var 顯示兩個文件的信息
        • ls --color 顯示文件帶有顏色
        • /bin/ls 顯示文件不帶顏色
        • 通配符 *代表一個或多個 ??? 只代表一個
      • alias 別名
        • 例如
          • alias chongqi='init 6'
      • du # 查看指定目錄使用磁盤空間大小
      • 絕對路徑(推薦用)
        • 以根爲起點 /
        • 準確表示一個目錄(或文件)所在的位置
        • 表示Linux中目錄結構相對穩定的目錄(或文件)位置
        • 比較麻煩
      • 相對路徑
        • 以當前所在目錄爲起點
        • 目錄的起始字符不使用 / 符號
        • 表示當前目錄‘附近‘的目錄(文件)位置
        • 簡短、便捷
        • 表現形式
          • 直接使用目錄名或文件名 當前工作目錄的子目錄、文件的位置
          • ’. ‘以當前的工作目錄爲起點
          • ’..‘以當前目錄的上一級目錄作爲起點
          • 以’~’用戶名‘形式開頭 以指定用戶的宿主目錄作爲起點
    • 創建目錄和文件
      • mkdir 創建目錄
        • mkdir +要創建的目錄名
        • mkdir可以同時創建多個目錄 如:mkdir la1 la2.....
        • mkdir -p 遞歸創建目錄
        • mkdir -m 設置新創建目錄對應的權限
        • mkdir -v 顯示創建目錄的過程(沒啥實際用途)
      • touch 創建文件,可以修改目錄的時間屬性
        • touch +要創建的文件夾名
    • 複製、刪除、移動目錄和文件
      • cp (copy)複製
        • cp +選項 +源文件/目錄 +目標文件/目錄(用空格隔開)
        • cp -p 複製文件時保持源文件的權限,時間等
        • cp -r 遞歸複製目錄,複製目錄下的子目錄以及文件
        • cp -i 覆蓋已有文件時提示用戶確認(別名)
        • cp -f 強制覆蓋,不提示(cp自帶-i)
        • 原生命令 /bin/cp
      • rm (remove)刪除
        • rm +選項 +文件或目錄
        • rm -i(別名) 刪除時會提示
        • rm -r 刪除目錄
        • rm -rf 刪除目錄不提示,強制刪除
      • mv (move)移動或重命名文件
        • mv +選項 +源文件 +目標文件 # 移動文件
        • mv +源文件 +源文件/重命名 # 重命名文件
        • mv -f 強制覆蓋
        • mv -i 覆蓋時詢問
        • mv -n 不覆蓋已存在的文件
    • 查找目錄和文件
      • which 只查找命令
        • 在環境變量裏搜索目標 echo $PATH
      • find (只找到第一個,不是所有的文件)
        • find +搜索的範圍(/ ) +條件表達式(-name) +要搜索的名字
          • 條件表達式
            • -name(名稱)允許使用*及?通配符
            • -size(文件大小)一般使用+、-號設置超過或小於指定的大小作爲查找條件
              • find / -size +1024k
              • find / -size +1024k -a -type f (大於1024k並且只顯示文件)兩個條件
              • find / -size +1024k -o -type f (大於1024k或顯示文件)
            • -user(宿主)根據文件是否屬於目標用戶進行查找
            • -type(類型)f 文件,d 目錄,b 設備塊,c字符設備文件
              • 例如

  • 查看文件內容
    • cat 升序排列
      • 用途:顯示出文件的內容
      • cat +選項 +文件名
    • tac 降序排列
    • more 往下翻
    • less 往上翻 (可以向下也可以向上)
    • tail (尾部十行)
      • tail -20
    • head (首部十行)
      • head -20
    • 命令組合
      • tac +查看的文件 | more(或less)
    • wc 統計字符 或者統計行數
      • word count
      • 例如

        • 8026 行數
        • 92271 字數
        • 632102 文件大小(kb)
      • wc -l(只顯示行數)
      • wc -w (單詞數)
    • grep 檢索
      • grep +過濾條件 +查看的文件
      • cat 查看的文件 | grep '過濾條件'
      • cat 查看的文件 | grep -i '過濾條件' #過濾時不區分大小寫
      • cat 查看的文件 | grep -v '過濾條件' #取反(過濾條件不看,顯示其他)
      • cat 查看的文件 | grep -i '^過濾條件' #查看以過濾條件開頭的 (只查看過濾條件 就在過濾條件後加空格)
        • grep -v '^$' 不要空行
      • cat 查看的文件 | grep '>$ ' #查看以>結尾的
  • 壓縮和打包
    • 壓縮
      • gzip(使用率高)
        • gzip -9 +壓縮的文件名 (9表示高壓縮率)
      • bzip2(壓縮速率最高)
        • bzip2 -9 +壓縮的文件名
    • 解壓縮
      • gzip -d +壓縮的文件名.gz
      • bzip2 -d +壓縮的文件名.bz2
      • gunzip +壓縮的文件名.gz (直接解壓縮)
    • 打包
      • tar
        • 用途:製作歸檔文件、釋放歸檔文件
        • tar +選項 +歸檔文件名 +源文件或目錄
          • tar -cf ljl.tar ljl
        • tar +選項 +歸檔文件名 -c 目標目錄
        • 常用選項
          • -c 創建 .tar格式的包文件
          • -x 解開 .tar格式的包文件
          • -v 輸出詳細信息
          • -f 表示使用歸檔文件
          • -p 打包時保留原始文件及目錄的權限
          • -t 列表查看包內的文件
        • 解壓縮
          • tar -xf ljl.tar
        • 打包並壓縮
          • tar -czf ljl.tar.gz ljl (gzip壓縮)
          • tar -cjf ljl.tar.bz2 ljl (bzip2壓縮)
          • 解包
            • tar -zxf ljl.tar.gz
            • tar -jxf ljl.tar.bz2
  • VI文本編輯器
    • 文本編輯器的作用
      • 創建或修改文本文件
      • 維護Linux系統中的各種配置文件
    • Linux中最常見的文本編輯器
      • VI :類Unix系統中默認的文本編輯器
      • vim :vi編輯器的增強版本,習慣上也稱爲vi
    • VI編輯器的工作模式
      • 三種工作模式
        • 命令模式、輸入模式、末行模式
      • 不同模式之間的切換
        • vim +文件名
      • 命令模式的基本操作
        • dd 刪除一行 (10 dd 刪除十行)
        • x 刪除字符串(delete)
        • d$ 刪除光標到行尾
        • d^ 刪除光標到行首
        • yy 複製
        • p 粘貼光標這一行之後(小寫)
        • P 粘貼光標這一行之前(大寫)
        • 6yy複製多行
        • 查找 / +要查找的字符串 (命令模式直接輸/) 從上而下
          • n 下一個
          • N 上一個
        • 查找? +要查找的字符串 (命令模式直接輸?)從下而上
        • u 返回上一級操作
        • U 返回一行操作
        • ZZ 保存並退出
      • 末行模式
        • set nu 顯示行數
        • set nonu 取消顯示行數
        • :wq 保存並退出
        • : w /http.conf.bak(根據需求自己更換) 另存爲
        • : q! 強行退出 (退出不保存)
        • : q 未修改退出
        • : e 打開一個新的編輯器
        • :r 讀入另外一個文檔的內容
        • : s /apache/httpd/ (文檔內容替換)將apache替換爲httpd 只替換一個
        • : s /apache/httpd/g 替換當前行中所有的apache
        • : 237,239 s /apache/apache/g 替換多行中的apache
        • : %s/apache/httpd/g 替換全文中的apache
        • :% s/apache/httpd/c 替換部分apache(需要一個一個確認)
      • 配置靜態網絡
        • vim /etc /sysconfig/network-scripts/ 網卡路徑
          • 編輯網卡 vim /ifcfg-eth0
          • HWADDR——MAC地址
          • TYPE——網絡類型
          • UUID——設備標識符(唯一)
          • ONBOOT——開機啓動(修改爲yes)
          • NM_CONTROLLED (建議修改爲NO)
            • service NetworkManager stop (不關閉會接管網絡配置)
          • BOOTPROTO——ip引導方式 (修改爲static是配置靜態)
            • IPADDR=
            • NETMASK=
            • GETWAY=
            • DNS1=
            • 保存退出  :wq
          • service network restart (重新啓動網絡服務)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章