<form id="3hdj5"></form>

<form id="3hdj5"></form>

        <noframes id="3hdj5"><form id="3hdj5"><nobr id="3hdj5"></nobr></form>

          <form id="3hdj5"></form>

          <noframes id="3hdj5">

          【Linux】Linux常用命令大全

          1. 基礎知識

          1.1 文件系統結構

          /bin? ? ? ? 存放普通用戶可執行的指令,即使在單用戶模式下也能夠執行處理
          /boot? ? ?  開機引導目錄,包括Linux內核文件與開機所需要的文件
          /dev? ? ??  設備目錄,所有的硬件設備及周邊均放置在這個設備目錄中
          /etc? ? ? ? 各種配置文件目錄,大部分配置屬性均存放在這里
          /home? ?    這里主要存放你的個人數據,具體每個用戶的設置文件
          /lib? ? ? ? 開機時常用的動態鏈接庫32位,bin及sbin指令也會調用對應的lib庫
          /lib64? ??  開機時常用的動態鏈接庫64位,bin及sbin指令也會調用對應的lib庫
          /media??    可移除設備掛載目錄,類似軟盤 U盤 光盤等臨時掛放目錄
          /mnt? ? ??  用戶臨時掛載其他的文件系統,額外的設備可掛載在這里,相對臨時而言
          /opt? ? ? ? 第三方軟件安裝目錄,現在習慣性的放置在/usr/local中
          /proc? ? ?  虛擬文件系統,通常是內存中的映射,特別在誤刪除數據文件后,只要系統不重啟,有很大幾率找回
          /root? ? ?  系統管理員主目錄,除root之外,其他用戶均放置在/home目錄下
          /run? ? ??  系統運行是所需文件,以前防止在/var/run中,后來拆分成獨立的/run目錄
          /sbin? ??   只有root才能運行的管理指令,跟bin類似,但只屬于root管理員
          /srv? ? ??  服務啟動后需要訪問的數據目錄,
          /sys? ? ?   跟proc一樣虛擬文件系統,記錄核心系統硬件信息
          /tmp? ??    存放臨時文件目錄,所有用戶對該目錄均可讀寫
          /usr? ? ?   應用程序放置目錄
          /var? ? ?   存放系統執行過程經常改變的文件
          /vmlinuz? ? 是可引導的,壓縮的linux內核,“vm”代表的“virtual memory”,一般是一個軟連接
          /lost+found?存放文件系統錯誤導致文件丟失后找回數據的
          
          """其他重要目錄 /var/log,存放系統日志信息:"""
          /var/log/message? ? ??系統啟動后的信息和錯誤日志,是Linux中最常用的日志之一
          /var/log/secure? ? ? ?與安全相關的日志信息
          /var/log/maillog? ? ? 與郵件相關的日志信息
          /var/log/cron? ? ? ? ?與定時任務相關的日志信息
          /var/log/spooler? ? ? 與UUCP和news設備相關的日志信息
          /var/log/boot.log? ? ?守護進程啟動和停止相關的日志消息

          1.2 Linux命令行含義

          示例:root@app00:~# 
          root    //用戶名,root為超級用戶
          @       //分隔符
          app00   //主機名稱
          ~       //當前所在目錄,默認用戶目錄為~,會隨著目錄切換而變化,例如:(root@app00:/bin# ,當前位置在bin目錄下)
          #       //表示當前用戶是超級用戶,普通用戶為$,例如:("yao@app00:/root$" ,表示使用用戶"yao"訪問/root文件夾)
          

          1.3 命令的組成成分

          示例:命令體 [選項] [命令的參數,命令的對象]  []代表可有可無
          cat -A test.txt
          head -n 10 test.txt
          
          其他:如何獲得命令的幫助?
          1. 命令 -h  或 命令 --h
          2. man 命令
          3. info info是GNU的超文本幫助系統
          4. help 命令
          

          1.4?Linux包管理工具分類

          (1)主流包管理器?Linux軟件包管理

          • DPKG:即package manager for Debian ,是 Debian 和基于 Debian 的系統中主要的包管理工具,用來安裝、構建、卸載、管理 deb 格式的軟件包。Ubuntu dpkg使用詳解
          • RPM? :全名是Red Hat Package Manager,一種數據庫記錄的方式將所需要的軟件安裝到Linux主機的一套管理程序。RPM簡介與基本使用 - 大師兄啊哈 - 博客園

          (2)軟件包的依賴

          ????????軟件包之間可能存在依賴關系,甚至循環依賴,即:A包依賴B包,B包依賴C包,C包依賴A包 安裝軟件包時,會因為缺少依賴的包,而導致安裝包失敗。解決依賴包管理工具:

          • DNF?:Fedora18+rpm包管理器前端工具,CentOS8版dnf代替yum
          • YUM?:rpm包管理器的前端工具
          • APT?:deb包管理器前端工具
          • zypper:suse上的rpm前端管理工具
          • pacman:就是Arch的apt-get?pacman (簡體中文) - ArchWiki
          • Portage:Gentoo Linux擁有的先進包管理系統,用Python編寫的,具有很多先進的特性

          (3)相關文檔

          【1】包管理器的進化 - 知乎

          【2】技術|Linux 黑話解釋:什么是包管理器?它是如何工作的?

          【3】Linux軟件包管理系統 – 標點符

          ?1.5?Linux系統分類

          ?1.6?CPU架構概述

          CPU架構是CPU廠商給屬于同一系列的CPU產品定的一個規范,主要目的是為了區分不同類型CPU的重要標示。目前市面上的CPU指令集分類主要分有兩大陣營,一個是intel、AMD為首的復雜指令集CPU,另一個是以IBM、ARM 為首的精簡指令集CPU。兩個不同品牌的CPU,其產品的架構也不相同,例如,Intel、AMD的CPU是X86架構的,而IBM公司的CPU是 PowerPC架構,ARM公司是ARM架構?。

          1.? 主要架構:X86、ARM、MIPS、PowerPC、SPARC:
          其中X86架構:IA、IA-32、IA-64、X86-32、X86-64、AMD64、Intel64
          
          2. 指令集:CISC(復雜指令集)、RISC(精簡指令集)、EPIC(顯式并行指令集)、VLIW(超長指令集)
          

          2. 基礎命令

          2.1 開關系統

          (1)立刻關機
            shutdown -h now 或者 poweroff
          (2)兩分鐘后關機
            shutdown -h 2
          (3)立刻重啟
            shutdown -r now 或者 reboot
          (4)兩分鐘后重啟
            shutdown -r 2 
          

          ?2.2?幫助命令

            ifconfig  --help     //查看 ifconfig 命令的用法
            man shutdown         //打開命令說明后,可按"q"鍵退出
          

          ??2.3?切換用戶

          useradd -d /home/newuser newuser(設定了該用戶的主目錄和用戶名)
          passwd newuser

          ?2.4 查看CPU

          lscpu:
            Architecture:           //架構
            CPU(s):                 //邏輯cpu顆數
            Thread(s) per core:     //每個核心線程
            Core(s) per socket:     //每個cpu插槽核數/每顆物理cpu核數
            CPU socket(s):          //cpu插槽數
            Vendor ID:              //cpu廠商ID
            CPU family:             //cpu系列
            Model:                  //型號
            Stepping:               //步進
            CPU MHz:                //cpu主頻
            Virtualization:         //cpu支持的虛擬化技術
            L1d cache:              //一級緩存(google了下,這具體表示表示cpu的L1數據緩存)
            L1i cache:              //一級緩存(具體為L1指令緩存)
            L2 cache:               //二級緩存
          
          cat /proc/cpuinfo          //查看每個CPU詳細信息

          ?2.5 bang(!)命令

          !!          //執行上一條命令
          !!string    //在上一條命令的后面追加 string ,并執行
          !nstring    //在第n條指令后面追加string,并執行
          ^foo^bar    //把上一條命令里的foo替換為bar,并執行
          !wget       //執行最近的以wget開頭的命令
          !wget:p     //僅打印最近的以wget開頭的命令,不執行。
          !$          //上一條命令的最后一個參數, 與 Alt - . 和 $_ 相同
          !*          //上一條命令的所有參數
          !*:p        //打印上一條命令是所有參數,也即 !*的內容。
          ^abc        //刪除上一條命令中的abc。
          !n          //執行歷史命令列表第n條命令,例如執行第三條命令:!3
          !-n         //執行歷史命令列表倒數第n條命令,例如執行倒數第三條的命令:!-3

          ?3. 目錄操作

          3.1 切換目錄(cd)

            cd /                 //切換到根目錄
            cd /bin              //切換到根目錄下的bin目錄
            cd ../               //切換到上一級目錄 或者使用命令:cd ..
            cd ~                 //切換到home目錄
            cd -                 //切換到上次訪問的目錄
            cd xx(文件夾名)       //切換到本目錄下的名為xx的文件目錄,如果目錄不存在報錯
            cd /xxx/xx/x         //可以輸入完整的路徑,直接切換到目標目錄,輸入過程中可以使用tab鍵快速補全
            cd *123              //模糊匹配,切換到目標文件夾,例如cd dafsfdgfgf123 等價于 cd *123

          3.2?查看目錄(ls)

            ls                   //查看當前目錄下的所有目錄和文件
            ls -a                //查看當前目錄下的所有目錄和文件(包括隱藏的文件)
            ls -l                //列表查看當前目錄下的所有目錄和文件(列表查看,更多信息),與"ll"效果一樣
            ls /bin              //查看指定目錄下的所有目錄和文件 
            ls -lR test/|grep "^-" |wc -l //統計出test文件夾中文件的個數
          

          3.3 創建目錄(mkdir)

            mkdir -p file          //當前目錄創建file文件夾,若存在則不創建
            mkdir /home/file{1..3} //指定目錄創建文件夾file1、file2、file3
            mkdir -m 777 file      //創建權限為777的目錄
          

          3.4 刪除目錄與文件(rm)

            rm 文件名/文件夾名              //刪除當前目錄的的文件(詢問)
            rm -f  文件名/文件夾名          //刪除當前目錄的的文件(不詢問)
            rm -rf */文件夾名              //刪除當前目錄所有文件夾或某個文件夾、包括其內子文件夾和文件
          
          

          3.5 修改目錄(mv)

            mv 當前目錄名 新目錄名           //修改目錄名,同樣適用與文件操作=rename命令
            mv -r /usr/tmp/tool /opt       //遞歸剪切目錄中所有文件和文件夾
            mv test1.txt test2.txt file1/  //移動test1、2到文件夾file1
            -f :force 強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋;
            -i :若目標文件 (destination) 已經存在時,就會詢問是否覆蓋!
            -u :若目標文件已經存在,且 source 比較新,才會更新(update)
          

          3.6 拷貝目錄(cp)

            cp [選項] 源文件 目標文件
              -a:相當于 -d、-p、-r 選項的集合;
              -d:如果源文件為軟鏈接(對硬鏈接無效),則復制出的目標文件也為軟鏈接;
              -i:詢問,如果目標文件已經存在,則會詢問是否覆蓋;
              -l:把目標文件建立為源文件的硬鏈接文件,而不是復制源文件;
              -s:把目標文件建立為源文件的軟鏈接文件,而不是復制源文件;
              -p:復制后目標文件保留源文件的屬性(包括所有者、所屬組、權限和時間);
              -r:遞歸復制,用于復制目錄;
              -u:若目標文件比源文件有差異,則使用該選項可以更新目標文件,此選項可用于對文件的升級和備用。
            cp –r test/ newtest                //將當前目錄 test/ 下的所有文件復制到新目錄 newtest下
            ls |head -n 100 |xargs -n1 -P 1 -i cp {} /home    //將當前目錄下100文件復制到home目錄

          ?3.7 搜索目錄(find)

            find /bin -name 'a*'        //查找/bin目錄下的所有以a開頭的文件或者目錄
            find . -type f              //將當前目錄及其子目錄中的所有文件列出
            find . -name "*.c"          //將當前目錄及其子目錄下所有文件后綴為 .c 的文件列出來

          4. 文件操作

          4.1 創建文件(touch)

             touch  a.txt         //創建文件(文件不存在),若文件存在,將文件時間屬性修改為當前系統時間
             : > a.txt            //將文件置空 等價于直接 xxx > a.txt
          

          4.2 編輯文件(vi、vim)

            vi 文件名              //打開需要編輯的文件
            --進入后,操作界面有三種模式:命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)
            命令模式
            -剛進入文件就是命令模式,通過方向鍵控制光標位置,
            -使用命令"dd"刪除當前整行
            -使用命令"/字段"進行查找
            -按"i"在光標所在字符前開始插入
            -按"a"在光標所在字符后開始插入
            -按"o"在光標所在行的下面另起一新行插入
            -按":"進入底行模式
            插入模式
            -此時可以對文件內容進行編輯,左下角會顯示 "-- 插入 --""
            -按"ESC"進入底行模式
            底行模式
            -退出編輯:      :q
            -強制退出:      :q!
            -保存并退出:    :wq
            ## 操作步驟示例 ##
            1.保存文件:按"ESC" -> 輸入":" -> 輸入"wq",回車     //保存并退出編輯
            2.取消操作:按"ESC" -> 輸入":" -> 輸入"q!",回車     //撤銷本次修改并退出編輯
            ## 補充 ##
            vim +10 filename.txt                   //打開文件并跳到第10行
            vim -R /etc/passwd                     //以只讀模式打開文件
          

          4.3 查看文件(head、tail)

          cat、less、more、head、tail
          cat -n a.txt                //查看文本文件內容,且附加行號
          cat -s a.txt > b.txt        //合并文本文件中的重復空行,并輸出到另一個文本文件
          cat a.txt b.txt > c.txt     //合并多個文件到一個文件
          cat test.txt |less          //less常用于查看大文件,逐頁查看
          cat test.txt |tail -n +500 |head -n 500 > list.txt //獲取原文檔500-1000行數據
          head *.txt && tail *.txt    //分別顯示所有txt文本的前10行及其后10行文本數據

          ?4.3 排序去重(sort、uniq)

          sort -t ' ' -k 2 -u test.txt         //將文本每行按照空格切分,以第二列去重并排序
          sort -t ' ' -k 2 test.txt |uniq -u   //將文本每行按照空格切分,在按照第二列排序后,在去重
          sort a.txt b.txt | uniq -d           //獲得兩文件的交集
          sort a.txt b.txt | uniq              //獲得兩文件的并集
          sort a.txt b.txt b.txt | uniq -u     //獲得兩文件的差集(a-b)

          5. 打包與解壓

          5.1 壓縮說明

            .zip、.rar        //windows系統中壓縮文件的擴展名
            .tar              //Linux中打包文件的擴展名
            .gz               //Linux中壓縮文件的擴展名
            .tar.gz           //Linux中打包并壓縮文件的擴展名
            .7z               //其他壓縮方式     

          5.2 ZIP打包解壓

          NTFS:無限制;FAT32:4GB;FAT:2GB  //zip壓縮文件大小限制,根據文件系統格式
          yum -y install zip unzip          //在linux中安裝zip 、unzip
          zip -P 密碼 -r A.zip file1/*      //按照原來目錄,加密壓縮文件夾
          cat test.txt | xargs zip -P 123 test.zip //按照路徑壓縮文件
          unzip /root/jieya aaa.zip         //解壓zip壓縮文件
          unzip -O GBK file.zip             //原來在windows上的zip文件, 在CentOS上使用unzip直接解壓會顯示亂碼,因為windows簡體中文版的操作系統一般上用的是GBK編碼, 所以會導致這個問題

          5.3 RAR打包解壓

          #安裝
          wget http://www.rarlab.com/rar/rarlinux-x64-5.0.0.tar.gz
          tar -zxvf rarlinux-x64-5.0.0.tar.gz
          mv rar /opt/
          cd /opt/rar/
          make && make install
          
          unrar e test.rar DestPath //解壓(會在把當前壓縮包內容解壓到當前目錄內,容易造成解壓內容和當前目錄原文件混合,不容易區分,不建議使用)
          unrar x test.rar DestPath //解壓(會在當前解壓目錄內產生一個以壓縮包名字命名的目錄,目錄內是解壓內容,推薦使用

          ?5.4 7za打包解壓

          #centos7安裝
          yum install epel-release
          yum install p7zip
          
          #分卷壓縮
          7z a name.7z filename -v10m
          
          #普通壓縮
          7za a -pvirus -t7z xxx.7z ./*
          
          #解壓
          7za e -ofile/ test.zip  #解壓到指定目錄
          7za x ABC.7z -r -o./       #-r 表示遞歸解壓縮所有的子目錄;參數 e 也是解壓縮文件,但其會將所有文件都解壓到根下,而不是自己原有的目錄下(x代表解壓縮文件,并且是按原始目錄樹解壓)
          參考文獻:http://www.854744.com/lyblyblyblin/article/details/68485625?spm
          
          #批量解壓
          ls |xargs -i -n1  echo {} |awk -F '.' '{print $1}' |xargs -n1 -t -i 7za x -p123 {}.7z -r -o./{}

          5.5?7z打包解壓

          sudo apt-get install p7zip-full p7zip-rar    //uos安裝7z
          sudo yum install p7zip p7zip-plugins         //centos安裝7z
          7z a test.7z *.txt                           //7z壓縮文件
          7z x -y -p密碼  壓縮包 -o文件路徑              //7zy解壓文件

          5.6?tar打包解壓

          tar -zxvf 文件名.tar.gz                 //解壓tar.gz包
          tar -zcvf 文件名.tar.gz 待壓縮的文件名   //打包tar.gz
          tar -xvJf 文件名.tar.xz                 //解壓tar.xz

          評論 2 您還未登錄,請先 登錄 后發表或查看評論

          “相關推薦”對你有幫助么?

          • 非常沒幫助
          • 沒幫助
          • 一般
          • 有幫助
          • 非常有幫助
          提交
          ??2022 CSDN 皮膚主題:大白 設計師:CSDN官方博客 返回首頁

          打賞作者

          kimicren

          你的鼓勵將是我創作的最大動力

          ¥2 ¥4 ¥6 ¥10 ¥20
          輸入1-500的整數
          余額支付 (余額:-- )
          掃碼支付
          掃碼支付:¥2
          獲取中
          掃碼支付

          您的余額不足,請更換掃碼支付或充值

          打賞作者

          實付
          使用余額支付
          點擊重新獲取
          掃碼支付
          錢包余額 0

          抵扣說明:

          1.余額是錢包充值的虛擬貨幣,按照1:1的比例進行支付金額的抵扣。
          2.余額無法直接購買下載,可以購買VIP、C幣套餐、付費專欄及課程。

          余額充值
          狠狠激情五月丁香免费视频