Linux 常用命令大全:覆蓋日常 99% 操作需求

1、基本命令

  • pwd:顯示當前工作目錄的絕對路徑,例如在復雜目錄結構中快速確認位置,執行后會輸出類似/home/user/documents的結果。
  • cd:切換目錄,cd 目錄路徑可進入指定目錄,cd ~回到當前用戶的家目錄,cd ..返回上一級目錄,cd -切換到上一次所在的目錄,cd /進入根目錄。
  • ls:列出目錄內容,ls顯示當前目錄下的文件和目錄(不包含隱藏文件);ls -l以長格式顯示,包含權限、所有者、大小、修改時間等信息;ls -a顯示所有文件和目錄,包括隱藏文件(以。開頭的文件);ls -h與ls -l配合使用,以人類可讀的格式顯示文件大小(如 K、M、G);ls -t按修改時間排序,最新的文件排在前面;ls -r反向排序;ls -S按文件大小排序。
  • clear:清空終端屏幕,使終端顯示更整潔,也可使用快捷鍵Ctrl + L實現相同功能。
  • echo:輸出指定的字符串或變量值,echo "Hello World"輸出字符串,echo $PATH輸出環境變量 PATH 的值。
  • date:顯示或設置系統時間,date顯示當前系統時間,date "+%Y-%m-%d %H:%M:%S"按指定格式顯示時間,date -s "2023-10-01 12:00:00"設置系統時間。
  • cal:顯示日歷,cal顯示當前月份的日歷,cal 2023顯示 2023 年全年的日歷,cal 10 2023顯示 2023 年 10 月的日歷。

2、關機

  • shutdown:關機或重啟系統,shutdown -h now立即關機;shutdown -h +1010 分鐘后關機;shutdown -r now立即重啟;shutdown -c取消已安排的關機或重啟任務;shutdown -h 23:00在 23:00 關機。
  • poweroff:直接關閉系統,相當于shutdown -h now,操作更簡潔。
  • reboot:重啟系統,功能與shutdown -r now類似,使用更方便。
  • halt:關閉系統,與 poweroff 類似,會停止 CPU 運行,但可能需要手動關閉電源(現在多數系統中與 poweroff 功能相近)。
  • init:改變系統運行級別,init 0關機,init 6重啟,init 3切換到多用戶命令行模式,init 5切換到圖形界面模式。

3、文件和目錄

  • mkdir:創建目錄,mkdir 目錄名創建單個目錄;mkdir -p dir1/dir2/dir3遞歸創建多級目錄,即使父目錄不存在也能一次性創建;mkdir -m 755 dir創建目錄時指定權限為 755。
  • rmdir:刪除空目錄,rmdir 目錄名只能刪除空目錄,若目錄中有文件或子目錄則無法刪除;rmdir -p dir1/dir2當 dir2 被刪除后,如果 dir1 也為空則一并刪除。
  • touch:創建空文件或更新文件的時間戳,touch 文件名若文件不存在則創建空文件,若文件已存在則更新其訪問和修改時間;touch -d "2023-10-01" file修改文件的時間戳為指定日期。
  • rm:刪除文件或目錄,rm 文件名刪除指定文件;rm -r 目錄名遞歸刪除目錄及其包含的所有文件和子目錄;rm -f 文件名強制刪除文件,不提示確認;rm -rf 目錄名強制遞歸刪除目錄,使用時需謹慎,避免誤刪重要數據;rm -i 文件名刪除前提示確認。
  • mv:移動或重命名文件 / 目錄,mv 源文件 目標路徑將文件移動到目標路徑;mv 舊文件名 新文件名對文件進行重命名;mv 源目錄 目標路徑移動目錄;mv -f 源 目標強制移動,覆蓋已存在的目標文件不提示;mv -i 源 目標若目標存在則提示是否覆蓋。

4、文件搜索

  • find:在指定目錄下搜索文件,find 搜索路徑 -name "文件名"按文件名搜索,支持通配符(如find /home -name "*.txt"搜索 /home 目錄下所有.txt 文件);find 搜索路徑 -size +10M搜索大于 10M 的文件;find 搜索路徑 -mtime -7搜索 7 天內修改過的文件;find 搜索路徑 -user 用戶名搜索指定用戶擁有的文件;find 搜索路徑 -type f只搜索普通文件;find 搜索路徑 -type d只搜索目錄;find 搜索路徑 -perm 755搜索權限為 755 的文件或目錄;find 搜索路徑 -name "*.log" -exec rm {} \;搜索.log 文件并刪除。
  • locate:快速搜索文件,基于數據庫搜索,速度比find快,locate 文件名可快速找到包含該文件名的文件路徑。使用前可執行updatedb更新數據庫(部分系統會自動定期更新);locate -i 文件名忽略大小寫搜索;locate -r "正則表達式"按正則表達式搜索。
  • grep:在文件中搜索指定的字符串,grep "字符串" 文件名在指定文件中搜索該字符串;grep -r "字符串" 目錄名遞歸在目錄下的所有文件中搜索;grep -i "字符串" 文件名忽略大小寫搜索;grep -n "字符串" 文件名顯示匹配行的行號;grep -v "字符串" 文件名顯示不包含該字符串的行;grep -A 3 "字符串" 文件名顯示匹配行及后面 3 行;grep -B 2 "字符串" 文件名顯示匹配行及前面 2 行;grep -C 2 "字符串" 文件名顯示匹配行及前后各 2 行。
  • whereis:查找二進制程序、源代碼和手冊頁的位置,whereis ls查找 ls 命令的相關文件;whereis -b ls只查找二進制文件;whereis -m ls只查找手冊頁。
  • which:在環境變量 PATH 指定的路徑中查找可執行文件的位置,which python查找 python 可執行文件的路徑;which -a ls顯示所有匹配的 ls 命令路徑。

5、掛載一個文件系統

  • mount:掛載文件系統,mount /dev/設備名 掛載點將指定設備掛載到掛載點(如mount /dev/sdb1 /mnt/usb掛載 U 盤到 /mnt/usb);mount -o ro /dev/cdrom /mnt/cdrom以只讀方式掛載光盤;mount -t ext4 /dev/sda1 /mnt指定文件系統類型為 ext4 進行掛載;mount -o loop 鏡像文件 掛載點掛載 ISO 等鏡像文件;mount顯示當前所有已掛載的文件系統。
  • umount:卸載文件系統,umount 掛載點或umount /dev/設備名(如umount /mnt/usb或umount /dev/sdb1),卸載前需確保該文件系統沒有被使用;umount -l 掛載點懶惰卸載,即使文件系統被使用也強制卸載(稍后實際卸載);umount -a卸載所有除了 proc、sysfs 等之外的文件系統。
  • mountpoint:判斷一個目錄是否為掛載點,mountpoint /mnt/usb判斷 /mnt/usb 是否是掛載點;mountpoint -q /mnt/usb靜默模式,只通過返回值判斷。
  • swapon:啟用交換分區或交換文件,swapon /dev/設備名啟用交換分區;swapon 交換文件名啟用交換文件;swapon -a啟用 /etc/fstab 中定義的所有交換設備;swapon -s顯示交換設備的使用情況。

6、磁盤空間

  • df:顯示磁盤分區的空間使用情況,df默認以字節為單位顯示;df -h以人類可讀的格式(K、M、G)顯示;df -T顯示文件系統類型;df -i顯示 inode 使用情況;df -P使用 POSIX 格式輸出,便于腳本處理;df /home只顯示 /home 所在分區的情況。
  • du:顯示目錄或文件的磁盤使用空間,du 目錄名顯示指定目錄下各子目錄的磁盤占用;du -h 文件名以人類可讀格式顯示文件大小;du -sh 目錄名顯示目錄的總大小(不顯示子目錄詳情);du -a 目錄名顯示目錄下所有文件和子目錄的大小;du -c 目錄名顯示總大小并匯總;du --max-depth=1 目錄名只顯示指定目錄下一級子目錄和文件的大小。
  • lsblk:列出塊設備信息,lsblk顯示所有塊設備的樹形結構;lsblk -f顯示塊設備的文件系統信息;lsblk -l以列表形式顯示;lsblk -o NAME,SIZE,TYPE,MOUNTPOINT指定顯示的列。
  • fdisk:磁盤分區工具,fdisk -l列出所有磁盤及分區信息;fdisk /dev/sda對 /dev/sda 磁盤進行分區操作(進入交互模式)。
  • parted:磁盤分區工具,支持更大的磁盤和更多的分區格式,parted -l列出磁盤分區信息;parted /dev/sda對 /dev/sda 進行分區操作。

7、用戶和群組

  • useradd:創建新用戶,useradd 用戶名創建用戶,默認在 /home 目錄下創建用戶家目錄;useradd -d /home/newdir 用戶名指定用戶家目錄;useradd -s /bin/bash 用戶名指定用戶的默認 shell;useradd -g 組名 用戶名指定用戶的主要組;useradd -G 組1,組2 用戶名指定用戶的附加組;useradd -m 用戶名自動創建用戶家目錄;useradd -r 用戶名創建系統用戶(無家目錄)。
  • passwd:設置或修改用戶密碼,passwd 用戶名為指定用戶設置密碼,若不指定用戶名則為當前用戶修改密碼;passwd -l 用戶名鎖定用戶(禁止登錄);passwd -u 用戶名解鎖用戶;passwd -d 用戶名刪除用戶密碼(登錄無需密碼);passwd -S 用戶名顯示用戶密碼狀態。
  • userdel:刪除用戶,userdel 用戶名刪除用戶,但保留用戶家目錄;userdel -r 用戶名刪除用戶的同時刪除其家目錄;userdel -f 用戶名強制刪除正在登錄的用戶。
  • groupadd:創建用戶組,groupadd 組名創建指定名稱的用戶組;groupadd -g 1000 組名指定組 ID 創建組;groupadd -r 組名創建系統組。
  • groupdel:刪除用戶組,groupdel 組名刪除指定的用戶組,需確保該組中沒有用戶。
  • usermod:修改用戶屬性,usermod -g 組名 用戶名將用戶添加到指定的主要組;usermod -aG 組名 用戶名將用戶添加到指定的附加組(-a 表示追加);usermod -d 新目錄 用戶名修改用戶家目錄;usermod -s /bin/sh 用戶名修改用戶的默認 shell;usermod -l 新用戶名 舊用戶名修改用戶名;usermod -L 用戶名鎖定用戶;usermod -U 用戶名解鎖用戶。
  • groupmod:修改用戶組屬性,groupmod -n 新組名 舊組名修改組名;groupmod -g 新GID 組名修改組 ID。
  • id:顯示用戶和組的 ID 信息,id 用戶名顯示指定用戶的 UID、GID 及所屬組信息;id -u 用戶名只顯示 UID;id -g 用戶名只顯示主要 GID。
  • whoami:顯示當前登錄用戶的用戶名。
  • who:顯示當前登錄的用戶信息,包括用戶名、登錄終端、登錄時間、遠程主機等;who -a顯示所有信息;who -r顯示當前運行級別。
  • w:顯示當前登錄用戶及其執行的命令,比 who 更詳細,包含用戶的 CPU 使用情況等。
  • last:顯示用戶登錄歷史記錄;last -n 10顯示最近 10 條記錄;last -u 用戶名顯示指定用戶的登錄歷史。

8、文件的權限

  • chmod:修改文件或目錄的權限,權限分為讀(r,4)、寫(w,2)、執行(x,1),分別對應所有者、所屬組和其他用戶。chmod 755 文件名為所有者授予讀、寫、執行權限,所屬組和其他用戶授予讀和執行權限;chmod u+x 文件名為所有者添加執行權限;chmod g-w 文件名取消所屬組的寫權限;chmod o=r 文件名為其他用戶設置只讀權限;chmod -R 755 目錄名遞歸修改目錄及其內容的權限;chmod a+x 文件名為所有用戶添加執行權限;chmod 000 文件名取消所有用戶的權限;chmod --reference=參考文件 目標文件將目標文件權限設置為與參考文件相同。
  • chown:修改文件或目錄的所有者和所屬組,chown 用戶名 文件名將文件所有者改為指定用戶;chown 用戶名:組名 文件名同時修改所有者和所屬組;chown -R 用戶名:組名 目錄名遞歸修改目錄的所有者和所屬組;chown .組名 文件名只修改所屬組(使用。分隔)。
  • chgrp:修改文件或目錄的所屬組,chgrp 組名 文件名將文件所屬組改為指定組;chgrp -R 組名 目錄名遞歸修改目錄的所屬組;chgrp --reference=參考文件 目標文件將目標文件所屬組設置為與參考文件相同。
  • umask:設置創建文件或目錄的默認權限,umask顯示當前的 umask 值;umask 022設置 umask 值為 022(創建文件默認權限為 644,目錄為 755)。

9、文件的特殊屬性

  • chattr:設置文件的特殊屬性,chattr +i 文件名設置文件為不可修改、刪除或重命名;chattr +a 文件名使文件只能追加內容,不能刪除或修改已有內容;chattr -i 文件名取消不可修改屬性;chattr +s 文件名文件刪除后數據塊被清零;chattr +u 文件名文件刪除后可恢復;chattr -R +i 目錄名遞歸設置目錄及其內容不可修改。
  • lsattr:查看文件的特殊屬性,lsattr 文件名顯示指定文件的特殊屬性;lsattr -d 目錄名顯示目錄的特殊屬性;lsattr -R 目錄名遞歸顯示目錄及其內容的特殊屬性;lsattr -a 文件名顯示包括隱藏文件在內的特殊屬性。

10、打包和壓縮文件

  • tar:打包和解包文件,常用于備份。tar -cvf 包名.tar 文件/目錄將文件或目錄打包成 tar 包;tar -xvf 包名.tar解包 tar 包;tar -tvf 包名.tar查看 tar 包內的內容;tar -czvf 包名.tar.gz 文件/目錄打包并以 gzip 壓縮;tar -xzvf 包名.tar.gz解壓 gzip 壓縮的 tar 包;tar -cjvf 包名.tar.bz2 文件/目錄打包并以 bzip2 壓縮;tar -xjvf 包名.tar.bz2解壓 bzip2 壓縮的 tar 包;tar -cJvf 包名.tar.xz 文件/目錄打包并以 xz 壓縮;tar -xJvf 包名.tar.xz解壓 xz 壓縮的 tar 包。
  • gzip:壓縮或解壓縮文件,gzip 文件名壓縮文件(壓縮后原文件刪除,生成.gz 文件);gzip -d 文件名.gz解壓縮.gz 文件;gzip -l 文件名.gz查看壓縮文件的信息;gzip -k 文件名壓縮文件時保留原文件。
  • bzip2:比 gzip 壓縮率更高,bzip2 文件名壓縮文件;bzip2 -d 文件名.bz2解壓縮;bzip2 -k 文件名壓縮時保留原文件;bzip2 -z 文件名強制壓縮(即使文件已壓縮)。
  • xz:高壓縮率的壓縮工具,xz 文件名壓縮文件;xz -d 文件名.xz解壓縮;xz -k 文件名壓縮保留原文件;xz -l 文件名.xz查看壓縮信息。
  • zip:創建 ZIP 格式壓縮包,zip 壓縮包名.zip 文件/目錄創建 ZIP 包;zip -r 壓縮包名.zip 目錄遞歸壓縮目錄;zip -d 壓縮包名.zip 文件名從壓縮包中刪除文件;zip -u 壓縮包名.zip 文件名更新壓縮包中的文件。
  • unzip:解壓縮 ZIP 格式文件,unzip 壓縮包名.zip解壓縮;unzip -l 壓縮包名.zip查看壓縮包內容;unzip 壓縮包名.zip -d 目錄解壓到指定目錄;unzip -o 壓縮包名.zip覆蓋已有文件不提示。

11、RPM 包

  • rpm -ivh 包名.rpm:安裝 RPM 包,-i表示安裝,-v顯示詳細信息,-h顯示進度條。
  • rpm -Uvh 包名.rpm:升級 RPM 包,若包未安裝則進行安裝。
  • rpm -e 包名:卸載 RPM 包,只需包名無需完整文件名。
  • rpm -qa:列出系統中已安裝的所有 RPM 包。
  • rpm -qa | grep 關鍵詞:查找包含關鍵詞的已安裝 RPM 包。
  • rpm -qi 包名:查看指定 RPM 包的詳細信息(版本、描述等)。
  • rpm -ql 包名:列出 RPM 包安裝的所有文件路徑。
  • rpm -qf 文件名:查詢指定文件由哪個 RPM 包安裝。
  • rpm -V 包名:驗證 RPM 包安裝的文件是否被修改。
  • rpm --import 公鑰文件:導入 RPM 包的簽名公鑰,用于驗證包的完整性。

12、YUM 軟件包升級器

  • yum install 包名:安裝軟件包,自動解決依賴關系。
  • yum update:升級系統中所有可升級的軟件包。
  • yum update 包名:僅升級指定的軟件包。
  • yum remove 包名:卸載軟件包,同時卸載無用的依賴。
  • yum list:列出所有可用的軟件包(已安裝和可安裝)。
  • yum list installed:列出已安裝的軟件包。
  • yum list available:列出可安裝的軟件包。
  • yum search 關鍵詞:搜索包含關鍵詞的軟件包。
  • yum info 包名:查看軟件包的詳細信息。
  • yum clean all:清理 YUM 緩存的軟件包和元數據。
  • yum makecache:生成 YUM 緩存,加快后續操作速度。
  • yum grouplist:列出軟件包組。
  • yum groupinstall "軟件包組名":安裝整個軟件包組。
  • yum groupremove "軟件包組名":卸載軟件包組。
  • yum repolist:列出已啟用的 YUM 倉庫。

13、DEB 包

  • dpkg -i 包名.deb:安裝 DEB 包,需手動解決依賴問題。
  • dpkg -r 包名:卸載 DEB 包,保留配置文件。
  • dpkg -P 包名:徹底卸載 DEB 包,刪除配置文件。
  • dpkg -l:列出系統中已安裝的 DEB 包。
  • dpkg -l | grep 關鍵詞:查找包含關鍵詞的已安裝 DEB 包。
  • dpkg -s 包名:查看指定 DEB 包的狀態信息。
  • dpkg -L 包名:列出 DEB 包安裝的所有文件。
  • dpkg -S 文件名:查詢指定文件由哪個 DEB 包安裝。
  • dpkg --configure -a:配置未完成配置的軟件包。
  • dpkg -c 包名.deb:查看 DEB 包內的文件列表(未安裝時)。

14、查看文件內容

  • cat 文件名:顯示文件的全部內容,適合查看小文件。
  • cat -n 文件名:顯示文件內容并顯示行號。
  • cat -b 文件名:顯示行號,但不包括空行。
  • tac 文件名:反向顯示文件內容(從最后一行到第一行)。
  • more 文件名:分頁顯示文件內容,按空格鍵翻頁,按 q 退出。
  • less 文件名:比 more 更強大的分頁查看工具,支持上下滾動、搜索(按 / 輸入關鍵詞,n 下一個,N 上一個),按 q 退出。
  • head 文件名:顯示文件的前幾行,默認前 10 行。
  • head -n 20 文件名:顯示文件的前 20 行。
  • tail 文件名:顯示文件的后幾行,默認后 10 行。
  • tail -n 15 文件名:顯示文件的后 15 行。
  • tail -f 文件名:實時跟蹤文件的新增內容(常用于查看日志),按 Ctrl+C 退出。
  • nl 文件名:給文件內容添加行號并顯示,類似 cat -n。
  • od -c 文件名:以 ASCII 碼方式顯示二進制文件內容。

15、文本處理

  • sed:流編輯器,用于文本替換、刪除等操作。sed 's/舊內容/新內容/' 文件名替換每行第一個匹配的舊內容;sed 's/舊內容/新內容/g' 文件名替換所有匹配的舊內容;sed '/關鍵詞/d' 文件名刪除包含關鍵詞的行;sed '3d' 文件名刪除第 3 行;sed '2,5d' 文件名刪除第 2 到 5 行;sed -i 's/舊/新/g' 文件名直接修改文件內容(謹慎使用)。
  • awk:文本處理工具,按列處理數據。awk '{print $1}' 文件名打印每行的第 1 列;awk -F ':' '{print $1,$3}' /etc/passwd以:為分隔符,打印第 1 和第 3 列;awk '$3 > 1000' 文件名打印第 3 列大于 1000 的行;awk '/關鍵詞/ {print $0}' 文件名打印包含關鍵詞的行;awk 'BEGIN{total=0} {total+=$1} END{print total}' 文件名計算第 1 列的總和。
  • sort:對文本內容排序。sort 文件名按默認規則排序;sort -n 文件名按數值大小排序;sort -r 文件名反向排序;sort -k 2 文件名按第 2 列排序;sort -u 文件名去除重復行;sort -t ',' -k 3n 文件名以,為分隔符,按第 3 列數值排序。
  • uniq:處理重復行(需先排序)。uniq 文件名去除連續重復行;uniq -c 文件名統計連續重復行的次數;uniq -d 文件名只顯示重復的行;uniq -u 文件名只顯示不重復的行。
  • cut:截取文本的列。cut -f 1 文件名截取第 1 列(默認制表符分隔);cut -d ':' -f 1,6 /etc/passwd以:為分隔符,截取第 1 和第 6 列;cut -c 1-5 文件名截取每行的第 1 到 5 個字符;cut -c 10- 文件名截取每行第 10 個字符及之后的內容。
  • paste:合并多個文件的列。paste file1 file2將 file1 和 file2 的內容按列合并;paste -d ',' file1 file2以,作為分隔符合并。
  • tr:字符轉換或刪除。tr 'a-z' 'A-Z' < 文件名將文件中 lowercase 轉為 uppercase;tr -d 'abc' 文件名刪除文件中的 a、b、c 字符;tr -s ' ' 文件名將多個連續空格壓縮為一個。

16、字符設置和文件格式轉換

  • iconv -f 原編碼 -t 目標編碼 原文件 -o 目標文件:轉換文件編碼,如iconv -f GBK -t UTF-8 old.txt -o new.txt將 GBK 編碼的 old.txt 轉為 UTF-8 編碼的 new.txt。
  • dos2unix 文件名:將 DOS 格式文件(換行符為 \r\n)轉換為 UNIX 格式(換行符為 \n)。
  • unix2dos 文件名:將 UNIX 格式文件轉換為 DOS 格式。
  • enca -L 語言 文件名:檢測文件的編碼格式,如enca -L chinese file.txt檢測中文文件編碼。
  • enca -L 語言 -x 目標編碼 文件名:轉換文件編碼,如enca -L chinese -x UTF-8 file.txt。

17、文件系統分析

  • dumpe2fs /dev/設備名:顯示 ext 系列文件系統的詳細信息(如塊大小、inode 數量等),需指定具體分區(如 /dev/sda1)。
  • e2fsck /dev/設備名:檢查并修復 ext 系列文件系統的錯誤,需在卸載狀態下使用,e2fsck -y /dev/sda1自動回答 yes 修復所有錯誤。
  • fsck:檢查并修復文件系統,自動識別文件系統類型,fsck /dev/sda1;fsck -f /dev/sda1強制檢查即使文件系統看似正常。
  • tune2fs:調整 ext 系列文件系統的參數,tune2fs -l /dev/sda1顯示參數;tune2fs -c 50 /dev/sda1設置每掛載 50 次檢查文件系統。
  • badblocks:檢查磁盤壞塊,badblocks /dev/sda檢查整個磁盤;badblocks -o badblocks.list /dev/sda1將壞塊列表保存到文件。

18、初始化一個文件系統

  • mkfs:創建文件系統,mkfs.ext4 /dev/sda1在 /dev/sda1 上創建 ext4 文件系統;mkfs.xfs /dev/sdb1創建 xfs 文件系統;mkfs.vfat /dev/sdc1創建 FAT32 文件系統(常用于 U 盤)。
  • mkfs.ext4:專門創建 ext4 文件系統,mkfs.ext4 -L 卷標 /dev/sda1創建時指定卷標;mkfs.ext4 -b 4096 /dev/sda1指定塊大小為 4096 字節。
  • mkfs.xfs:創建 xfs 文件系統,mkfs.xfs -f /dev/sdb1強制創建(即使已有文件系統)。
  • mkswap /dev/設備名:初始化交換分區,mkswap /dev/sda5將 /dev/sda5 初始化為交換分區。

19、SWAP 文件系統

  • dd if=/dev/zero of=/swapfile bs=1G count=4:創建一個 4GB 的交換文件(if 表示輸入文件,of 表示輸出文件,bs 是塊大小,count 是塊數)。
  • mkswap /swapfile:將文件初始化為交換文件系統。
  • swapon /swapfile:啟用交換文件。
  • swapoff /swapfile:關閉交換文件。
  • swapon -s:顯示所有交換設備和文件的使用情況。
  • free -h:查看內存和交換分區的使用情況,確認 swap 是否生效。
  • 永久啟用:編輯 /etc/fstab,添加/swapfile swap swap defaults 0 0,使系統重啟后自動掛載。

20、備份

  • rsync -av 源路徑 目標路徑:同步文件和目錄,-a歸檔模式(遞歸、保留權限等),-v詳細輸出。如rsync -av /home/user /backup備份 /home/user 到 /backup。
  • rsync -avz 源路徑 遠程用戶@遠程主機:目標路徑:通過 SSH 遠程同步,-z壓縮傳輸數據。
  • tar -czvf /backup/$(date +%Y%m%d)_etc.tar.gz /etc:按日期創建 /etc 目錄的壓縮備份。
  • dump -0u -f /backup/root_dump /:備份根目錄到指定文件,-0是備份級別(0 為全量),-u更新備份記錄。
  • restore -rf /backup/root_dump:恢復 dump 創建的備份。
  • cp -a 源文件 目標文件:復制文件并保留所有屬性(權限、時間戳等),適合簡單備份。

21、光盤

  • cdrecord -v dev=/dev/cdrom 鏡像.iso:刻錄 ISO 鏡像到光盤,-v顯示詳細信息。
  • mkisofs -o 鏡像.iso 目錄:將目錄內容制作成 ISO 鏡像文件。
  • eject:彈出光盤驅動器。
  • eject -t:關閉光盤驅動器托盤。
  • mount /dev/cdrom /mnt/cdrom:掛載光盤到 /mnt/cdrom 目錄。

22、網絡

  • ifconfig:查看和配置網絡接口信息,ifconfig顯示所有激活的網絡接口;ifconfig eth0查看指定接口(如 eth0)的信息;ifconfig eth0 192.168.1.100 netmask 255.255.255.0為 eth0 設置 IP 和子網掩碼;ifconfig eth0 up激活接口;ifconfig eth0 down禁用接口。
  • ip:更強大的網絡配置工具,ip addr查看 IP 地址信息;ip addr add 192.168.1.101/24 dev eth0為 eth0 添加 IP;ip link set eth0 up/down激活 / 禁用接口;ip route查看路由表;ip route add default via 192.168.1.1設置默認網關。
  • ping:測試網絡連通性,ping 192.168.1.1向目標 IP 發送 ICMP 請求;ping -c 4 www.baidu.com發送 4 個請求后停止;ping -i 2 10.0.0.1每隔 2 秒發送一次請求。
  • traceroute:追蹤數據包到目標主機的路徑,traceroute www.google.com顯示經過的路由節點;traceroute -n 192.168.1.1以 IP 顯示節點(不解析域名)。
  • netstat:查看網絡連接、路由表等,netstat -tuln顯示所有監聽的 TCP 和 UDP 端口;netstat -an顯示所有網絡連接;netstat -r顯示路由表;netstat -s顯示網絡統計信息。
  • ss:替代 netstat 的工具,更高效,ss -tuln查看監聽端口;ss -an查看所有連接;ss -o state established '( dport = :80 or sport = :80 )'查看 80 端口的已建立連接。
  • hostname:查看或設置主機名,hostname顯示當前主機名;hostname newname臨時修改主機名(重啟失效);永久修改需編輯/etc/hostname文件。
  • host:DNS 查詢工具,host www.baidu.com查詢域名對應的 IP;host 114.114.114.114反向查詢 IP 對應的域名。
  • dig:更詳細的 DNS 查詢工具,dig www.baidu.com查詢域名信息;dig @8.8.8.8 www.baidu.com指定 DNS 服務器查詢;dig +short www.baidu.com只顯示 IP 結果。
  • wget:下載文件,wget http://example.com/file.tar.gz下載指定 URL 文件;wget -c http://example.com/bigfile.iso斷點續傳;wget -O newname.zip http://example.com/oldname.zip指定保存文件名。
  • curl:傳輸數據工具,支持多種協議,curl Example Domain獲取網頁內容;curl -O http://example.com/file.txt下載文件;curl -X POST -d "name=test" http://example.com/api發送 POST 請求。

23、列出目錄內容

  • ls:基礎命令,已在基本命令中詳述,補充ls -la可查看所有文件(包括隱藏)的詳細信息;ls -ld 目錄名查看目錄本身的信息而非內容。
  • tree:以樹形結構列出目錄內容,tree顯示當前目錄樹形結構;tree -L 2只顯示 2 級目錄;tree -d只顯示目錄;tree -f顯示文件的完整路徑。

24、查看文件的類型

  • file:判斷文件類型,file filename顯示文件類型(文本、二進制、壓縮包等);file -b filename只顯示類型描述(無文件名);file -L linkname查看符號鏈接指向的文件類型。
  • mime-type:查看文件的 MIME 類型(部分系統需安裝),mime-type filename返回類似text/plain的結果。

25、復制文件目錄等操作

  • cp:復制文件和目錄,cp source.txt dest.txt復制文件;cp -i source.txt dest.txt覆蓋前提示;cp -r dir1 dir2遞歸復制目錄;cp -a dir1 dir2復制目錄并保留所有屬性;cp *.txt /tmp復制所有 txt 文件到 /tmp。
  • rsync:高效同步工具,已在備份中詳述,補充rsync -av --delete source/ dest/同步并刪除 dest 中 source 沒有的文件。
  • scp:通過 SSH 復制文件,scp localfile user@remotehost:/path復制本地文件到遠程;scp user@remotehost:/file localpath復制遠程文件到本地;scp -r dir user@remotehost:/path遞歸復制目錄。

26、系統常用命令

  • top:實時監控系統資源使用情況,顯示進程 CPU、內存占用等,按q退出;top -p 1234只監控 PID 為 1234 的進程;top -u username只顯示指定用戶的進程。
  • htop:增強版 top,支持鼠標操作,htop啟動后可直觀查看系統狀態,按F10退出。
  • ps:查看進程狀態,ps aux顯示所有進程;ps -ef以全格式顯示進程;ps aux | grep python查找 python 相關進程;ps -l顯示當前終端的進程。
  • pstree:以樹形結構顯示進程,pstree顯示所有進程樹;pstree -p顯示進程 ID;pstree username顯示指定用戶的進程樹。
  • kill:終止進程,kill 1234向 PID 為 1234 的進程發送終止信號;kill -9 1234強制終止進程(慎用);killall processname終止所有同名進程。
  • bg:將前臺進程轉為后臺運行,bg %1將編號為 1 的暫停進程放入后臺。
  • fg:將后臺進程調至前臺,fg %1將編號為 1 的后臺進程調至前臺。
  • jobs:查看后臺運行的進程,jobs列出所有后臺進程及狀態。
  • nohup:使進程在后臺長期運行,nohup command &執行命令并忽略掛起信號,輸出保存到 nohup.out。
  • free:查看內存使用情況,free -h以人類可讀格式顯示內存和 swap 使用;free -s 5每隔 5 秒刷新一次。
  • vmstat:報告虛擬內存統計信息,vmstat顯示內存、進程、IO 等信息;vmstat 2 5每隔 2 秒輸出一次,共 5 次。
  • iostat:監控 CPU 和 IO 統計,iostat顯示 CPU 和設備 IO 信息;iostat -x 1每隔 1 秒顯示詳細 IO 信息。
  • sar:系統活動報告工具,sar -u 1 3監控 CPU 使用(1 秒一次,3 次);sar -r查看內存使用;sar -n DEV查看網絡接口統計。
  • history:查看命令歷史記錄,history顯示所有歷史命令;history 10顯示最近 10 條;!123執行歷史記錄中編號為 123 的命令;!grep執行最近一條以 grep 開頭的命令。
  • alias:設置命令別名,alias ll='ls -l'將 ll 設為 ls -l 的別名;alias查看所有別名;unalias ll取消別名。
  • uname:顯示系統信息,uname -a顯示所有系統信息(內核版本、主機名、架構等);uname -r顯示內核版本;uname -m顯示機器架構。
  • uptime:顯示系統運行時間和負載,uptime輸出格式:當前時間 up 運行時間, 用戶數, 負載平均值。
  • df和du:已在磁盤空間中詳述,補充df -Th顯示文件系統類型;du -sh *顯示當前目錄下各文件 / 目錄的總大小。

27、VIM

  • vim 文件名:啟動 VIM 并打開文件,若文件不存在則創建。
  • 插入模式:按i在當前光標前插入;I在行首插入;a在當前光標后插入;A在行尾插入;o在當前行下方新增一行并插入;O在當前行上方新增一行并插入;按Esc退出插入模式。
  • 命令模式(正常模式)
    • 移動光標:h左移,j下移,k上移,l右移;gg到文件開頭;G到文件結尾;nG到第 n 行;^到行首;$到行尾。
    • 刪除操作:x刪除光標所在字符;dd刪除當前行;ndd刪除從當前行開始的 n 行;dG刪除從當前行到文件結尾;d$刪除從光標到行尾。
    • 復制粘貼:yy復制當前行;nyy復制 n 行;p粘貼到光標后;P粘貼到光標前。
    • 撤銷重做:u撤銷上一步;Ctrl + r重做。
    • 查找替換:/關鍵詞向下查找;?關鍵詞向上查找;n下一個匹配;N上一個匹配;:s/舊內容/新內容/替換當前行第一個匹配;:s/舊內容/新內容/g替換當前行所有匹配;:%s/舊內容/新內容/g替換整個文件所有匹配;:%s/舊內容/新內容/gc替換時確認。
  • 末行模式:按:進入,w保存;q退出;wq保存并退出;q!強制退出不保存;set nu顯示行號;set nonu隱藏行號;set autoindent自動縮進;:n跳轉到第 n 行。

28、軟件包管理命令 (RPM)

  • 除前文 11 節所述,補充:
    • rpm -qp 包名.rpm:查詢未安裝的 RPM 包信息。
    • rpm -qpl 包名.rpm:列出未安裝的 RPM 包將安裝的文件。
    • rpm -qpR 包名.rpm:查看未安裝的 RPM 包的依賴關系。
    • rpm -ivh --force 包名.rpm:強制安裝,覆蓋已安裝文件。
    • rpm -ivh --nodeps 包名.rpm:忽略依賴關系安裝(不推薦,可能導致軟件無法運行)。
    • rpm -Va:驗證系統中所有已安裝的 RPM 包文件完整性。
    • rpm -qi --changelog 包名:查看包的更新日志。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/92998.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/92998.shtml
英文地址,請注明出處:http://en.pswp.cn/web/92998.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

普通電腦與云電腦的區別有哪些?全面科普

近年來&#xff0c;越來越多的人不再購置升級自己的電腦&#xff0c;轉而選擇云電腦&#xff0c;云端產品正在變得越來越普及易用。那么它究竟跟我們的普通本地設備有什么區別吶&#xff1f;或許很多人并不知悉&#xff0c;對此&#xff0c;本篇內容小編就為大家簡要科普一下普…

【Python】支持向量機SVM

示例代碼&#xff1a;import numpy as np import matplotlib.pyplot as plt from sklearn import svm from sklearn.datasets import make_blobs from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score, classification_report# 設…

當AI學會“抄近路”:殘差網絡如何突破深度學習的極限

**——解讀《Deep Residual Learning for Image Recognition》**今天我想帶大家回到2015年&#xff0c;見證人工智能領域的一場“捷徑革命”——由何愷明等人提出的**深度殘差學習框架&#xff08;ResNet&#xff09;**。這篇論文解決了困擾AI界多年的“深度詛咒”&#xff0c;…

HCIP--BGP綜合實驗

目錄 BGP綜合實驗報告 一、實驗拓撲 二、實驗要求 三、實驗思路 &#xff08;一&#xff09;IP地址規劃 &#xff08;二&#xff09;整體思路 四、實驗步驟 &#xff08;一&#xff09; IP地址配置 &#xff08;二&#xff09; AS2內部配置OSPF協議 &#xff08;三&a…

Java 基礎編程案例:從輸入交互到邏輯處理

在Java編程學習中&#xff0c;輸入輸出、循環控制和邏輯判斷是核心基礎。本文整理了10個經典案例&#xff0c;涵蓋Scanner輸入處理、斐波那契數列、成績統計、登錄驗證等場景&#xff0c;幫助初學者掌握編程邏輯與實用技巧。 一、Scanner輸入交互&#xff1a;獲取用戶輸入并處理…

LeetCode 面試經典 150_數組/字符串_整數轉羅馬數字(18_12_C++_中等)(模擬)(對各位進行拆解)

LeetCode 面試經典 150_數組/字符串_整數轉羅馬數字&#xff08;18_12_C_中等&#xff09;題目描述&#xff1a;輸入輸出樣例&#xff1a;題解&#xff1a;解題思路&#xff1a;思路一&#xff08;模擬&#xff09;&#xff1a;思路二&#xff08;對各位進行拆解&#xff09;&a…

計算機網絡摘星題庫800題筆記 第6章 應用層

第6章 應用層 6.1 網絡應用的架構 考點 1 CS 架構 題組闖關 1.DNS 是基于 ( ) 模式的分布式系統。 A. C/S B. B/S C. P2P D. 以上均不正確 1.【參考答案】A 【解析】本題考查網絡應用模型。 DNS 作為分布式應用&#xff0c;是一種典型的 C/S 模式&#xff0c;是隨著 Internet 技…

BLUCK電路的輸入電容應該怎么選取

借用TI的BULK芯片討論一下輸入電容怎么選取的問題&#xff0c;BULK電源是我們常用的電源&#xff0c;它的原理請看之前的文章&#xff1a; 高壓差為何不用LDO&#xff1f;DCDC效率更高&#xff01;-CSDN博客 本文我們探討一下輸入電容&#xff0c;輸入電容是控制紋波的關鍵&a…

CAN仲裁機制的原理

我們來詳細講 CAN 仲裁機制 的原理和工作方式,這是 CAN 總線最核心的特性之一。 1?? 基本概念 CAN 總線是 多主機、多節點的串行總線,所有節點共享一根差分信號線(CAN_H / CAN_L)。 每個節點都可以隨時發送消息(多主機機制) 總線只能同時有一個節點成功發送 仲裁 用…

【GPT入門】第46課 vllm安裝、部署與使用

【GPT入門】第46課 vllm安裝、部署與使用 1.準備服務器 2. 安裝 conda環境,隔離base環境 3. vllm使用 3.1 在線推理, openai兼容服務器 3.2 模型離線調用 4. 沒有使用GPU問題分析 1.準備服務器 cuda 版本選12.1 vllm官網介紹: https://vllm.hyper.ai/docs/getting-started/…

【從網絡基礎到實戰】理解TCP/IP協議體系的核心要點(包含ARP協議等其他協議介紹)

前言&#xff1a; 學習計算機網絡不僅是軟件開發的基礎功&#xff0c;更是成為一名合格后端工程師、網絡工程師的重要門檻。本文將基于 TCP/IP 協議體系&#xff0c;系統梳理網絡層、數據鏈路層、以及相關協議的核心知識&#xff0c;并結合實際案例與代碼示例幫助理解。一、網絡…

Python 元類基礎:從理解到應用的深度解析

在 Python 的高級編程中&#xff0c;元類&#xff08;metaclass&#xff09; 無疑是最神秘又最強大的特性之一。它不僅是構建類的“工廠”&#xff0c;更是 Python 靈活對象模型的體現。本文將帶你從基礎概念入手&#xff0c;深入理解元類的本質、工作機制以及實際應用&#xf…

Nginx 配置代理服務器的詳細方法

一、什么是代理服務器&#xff1f; 類型說明正向代理客戶端通過代理訪問目標服務器&#xff08;隱藏客戶端身份&#xff09;反向代理客戶端訪問代理服務器&#xff0c;由代理服務器請求后端服務器&#xff08;隱藏后端服務器&#xff09; 二、Nginx 反向代理配置方法&#xff…

Lombok插件介紹及安裝(Eclipse)

一、Lombok 的用途 Lombok是一個 Java 庫&#xff0c;通過注解的方式簡化 Java 代碼的編寫。它能夠自動生成常見的代碼&#xff0c;如getter、setter、toString、equals、hashCode等方法&#xff0c;從而減少樣板代碼&#xff0c;使代碼更加簡潔、易讀。 Lombok 通過添加**Dat…

硬核操作!Go 語言生成 “會爬墻的清潔機器人”,玻璃外墻自己擦

本文聚焦于利用 Go 語言開發 “會爬墻的清潔機器人” 這一硬核技術&#xff0c;圍繞該機器人如何實現玻璃外墻自主清潔展開。首先介紹開發背景與需求&#xff0c;接著闡述 Go 語言在其中的優勢&#xff0c;詳細講解機器人的核心技術&#xff0c;包括吸附系統、運動控制、清潔機…

Qt——實現”Hello World“、認識對象樹與Qt坐標系

在創建項目時&#xff0c;使用的基類Base Class為QWidget 1. 使用圖形化界面的方式實現“Hello World” 雙擊文件&#xff1a;widget.ui&#xff0c;進入designer模式&#xff1a;在“控件盒子”的“Display Widgets”中找到“Label”&#xff0c;并拖放到白板中雙擊剛剛拖放到…

智能合約開發全流程實戰指南

目錄 靈感探索與概念驗證合約開發常見問題 Hardhat 初始化項目問題合約編譯錯誤處理智能合約設計缺陷 合約測試最佳實踐 單元測試環境配置測試用例編寫技巧測試覆蓋率和策略常見測試失敗原因 合約部署實戰指南 部署到不同網絡部署前準備事項部署后驗證方法部署費用和Gas優化 合…

IPA1299至為芯替代TI ADS1299的腦機接口芯片

在腦機接口、神經科學研究和醫療電子設備領域&#xff0c;腦電信號采集芯片是連接生物電信號與數字世界的重要組件。目前&#xff0c;TI等國際廠商憑借技術優勢占據市場主要份額&#xff0c;國內廠商在成本控制、供貨周期和技術自主性方面面臨挑戰。英集芯推出的IPA1299低噪聲多…

「數據獲取」《中國海洋生態環境狀況公報》(2001-2023年)(獲取方式看綁定的資源)

01、數據簡介在 2023 年的海洋環境監測工作中&#xff0c;監測范圍廣泛且細致。全年對 1359 個海洋環境質量國家控制點位進行了水質監測&#xff0c;這些點位分布在我國管轄的各大海域&#xff0c;能夠全面反映海洋整體水質狀況&#xff1b;對 230 個入海河流國家控制斷面開展監…

通過限制網絡訪問來降低服務器被攻擊風險的方法

限制網絡訪問是降低服務器被攻擊風險的核心思路之一&#xff0c;因為絕大多數入侵都是從開放的網絡入口開始的。思路是“減少暴露面 精確授權”&#xff0c;讓服務器只對必要的人、必要的業務開放。我給你分成幾個層次來說明&#xff0c;從最外層網絡入口到最內層系統配置都涉…