今天,帶來一篇 Linux 命令總結的非常全的文章,也是我們平時工作中使用率非常高的操作命令,命令有點多,建議小伙伴們可以先收藏后閱讀。
1. 基本命令
?
uname?-m?顯示機器的處理器架構 uname?-r?顯示正在使用的內核版本 dmidecode?-q?顯示硬件系統(tǒng)部件 (SMBIOS?/?DMI)?hdparm?-i?/dev/hda?羅列一個磁盤的架構特性 hdparm?-tT?/dev/sda?在磁盤上執(zhí)行測試性讀取操作系統(tǒng)信息 arch?顯示機器的處理器架構 uname?-m?顯示機器的處理器架構 uname?-r?顯示正在使用的內核版本 dmidecode?-q?顯示硬件系統(tǒng)部件?-?(SMBIOS?/?DMI) hdparm?-i?/dev/hda?羅列一個磁盤的架構特性 hdparm?-tT?/dev/sda?在磁盤上執(zhí)行測試性讀取操作 cat?/proc/cpuinfo?顯示CPU?info的信息 cat?/proc/interrupts?顯示中斷 cat?/proc/meminfo?校驗內存使用 cat?/proc/swaps?顯示哪些swap被使用 cat?/proc/version?顯示內核的版本 cat?/proc/net/dev?顯示網(wǎng)絡適配器及統(tǒng)計 cat?/proc/mounts?顯示已加載的文件系統(tǒng) lspci?-tv?羅列?PCI?設備 lsusb?-tv?顯示?USB?設備 date?顯示系統(tǒng)日期 cal?2007?顯示2007年的日歷表 date?041217002007.00?設置日期和時間?-?月日時分年.秒 clock?-w?將時間修改保存到?BIOS
?
2. 關機
?
shutdown?-h?now?關閉系統(tǒng)(1) init?0?關閉系統(tǒng)(2) telinit?0?關閉系統(tǒng)(3) shutdown?-h?hours:minutes?&?按預定時間關閉系統(tǒng) shutdown?-c?取消按預定時間關閉系統(tǒng) shutdown?-r?now?重啟(1) reboot?重啟(2) logout?注銷
?
3. 文件和目錄
?
cd?/home?進入?'/?home'?目錄' cd?..?返回上一級目錄 cd?../..?返回上兩級目錄 cd?進入個人的主目錄 cd?~user1?進入個人的主目錄 cd?-?返回上次所在的目錄 pwd?顯示工作路徑 ls?查看目錄中的文件 ls?-F?查看目錄中的文件 ls?-l?顯示文件和目錄的詳細資料 ls?-a?顯示隱藏文件 ls?*[0-9]*?顯示包含數(shù)字的文件名和目錄名 tree?顯示文件和目錄由根目錄開始的樹形結構(1) lstree?顯示文件和目錄由根目錄開始的樹形結構(2) mkdir?dir1?創(chuàng)建一個叫做?'dir1'?的目錄' mkdir?dir1?dir2?同時創(chuàng)建兩個目錄 mkdir?-p?/tmp/dir1/dir2?創(chuàng)建一個目錄樹 rm?-f?file1?刪除一個叫做?'file1'?的文件' rmdir?dir1?刪除一個叫做?'dir1'?的目錄' rm?-rf?dir1?刪除一個叫做?'dir1'?的目錄并同時刪除其內容 rm?-rf?dir1?dir2?同時刪除兩個目錄及它們的內容 mv?dir1?new_dir?重命名/移動?一個目錄 cp?file1?file2?復制一個文件 cp?dir/*?.?復制一個目錄下的所有文件到當前工作目錄 cp?-a?/tmp/dir1?.?復制一個目錄到當前工作目錄 cp?-a?dir1?dir2?復制一個目錄 ln?-s?file1?lnk1?創(chuàng)建一個指向文件或目錄的軟鏈接 ln?file1?lnk1?創(chuàng)建一個指向文件或目錄的物理鏈接 touch?-t?0712250000?file1?修改一個文件或目錄的時間戳?-?(YYMMDDhhmm) file?file1?outputs?the?mime?type?of?the?file?as?text iconv?-l?列出已知的編碼 iconv?-f?fromEncoding?-t?toEncoding?inputFile?>?outputFile?creates?a?new?from?the?given?input?file?by?assuming?it?is?encoded?in?fromEncoding?and?converting?it?to?toEncoding. find?.?-maxdepth?1?-name?*.jpg?-print?-exec?convert?"{}"?-resize?80x60?"thumbs/{}"?;?batch?resize?files?in?the?current?directory?and?send?them?to?a?thumbnails?directory?(requires?convert?from?Imagemagick)
?
4. 文件搜索
?
find?/?-name?file1?從?'/'?開始進入根文件系統(tǒng)搜索文件和目錄 find?/?-user?user1?搜索屬于用戶?'user1'?的文件和目錄 find?/home/user1?-name?*.bin?在目錄?'/?home/user1'?中搜索帶有'.bin'?結尾的文件 find?/usr/bin?-type?f?-atime?+100?搜索在過去100天內未被使用過的執(zhí)行文件 find?/usr/bin?-type?f?-mtime?-10?搜索在10天內被創(chuàng)建或者修改過的文件 find?/?-name?*.rpm?-exec?chmod?755?'{}'?;?搜索以?'.rpm'?結尾的文件并定義其權限 find?/?-xdev?-name?*.rpm?搜索以?'.rpm'?結尾的文件,忽略光驅、捷盤等可移動設備 locate?*.ps?尋找以?'.ps'?結尾的文件?-?先運行?'updatedb'?命令 whereis?halt?顯示一個二進制文件、源碼或man的位置 which?halt?顯示一個二進制文件或可執(zhí)行文件的完整路徑
?
5. 掛載一個文件系統(tǒng)
?
mount?/dev/hda2?/mnt/hda2?掛載一個叫做hda2的盤?-?確定目錄?'/?mnt/hda2'?已經(jīng)存在 umount?/dev/hda2?卸載一個叫做hda2的盤?-?先從掛載點?'/?mnt/hda2'?退出 fuser?-km?/mnt/hda2?當設備繁忙時強制卸載 umount?-n?/mnt/hda2?運行卸載操作而不寫入?/etc/mtab?文件-?當文件為只讀或當磁盤寫滿時非常有用 mount?/dev/fd0?/mnt/floppy?掛載一個軟盤 mount?/dev/cdrom?/mnt/cdrom?掛載一個cdrom或dvdrom mount?/dev/hdc?/mnt/cdrecorder?掛載一個cdrw或dvdrom mount?/dev/hdb?/mnt/cdrecorder?掛載一個cdrw或dvdrom mount?-o?loop?file.iso?/mnt/cdrom?掛載一個文件或ISO鏡像文件 mount?-t?vfat?/dev/hda5?/mnt/hda5?掛載一個Windows?FAT32文件系統(tǒng) mount?/dev/sda1?/mnt/usbdisk?掛載一個usb?捷盤或閃存設備 mount?-t?smbfs?-o?username=user,password=pass?//WinClient/share?/mnt/share?掛載一個windows網(wǎng)絡共享
?
6. 磁盤空間
?
df?-h?顯示已經(jīng)掛載的分區(qū)列表 ls?-lSr?|more?以尺寸大小排列文件和目錄 du?-sh?dir1?估算目錄?'dir1'?已經(jīng)使用的磁盤空間' du?-sk?*?|?sort?-rn?以容量大小為依據(jù)依次顯示文件和目錄的大小 rpm?-q?-a?--qf?'%10{SIZE}t%{NAME}n'?|?sort?-k1,1n?以大小為依據(jù)依次顯示已安裝的rpm包所使用的空間?(fedora,?redhat類系統(tǒng)) dpkg-query?-W?-f='${Installed-Size;10}t${Package}n'?|?sort?-k1,1n?以大小為依據(jù)顯示已安裝的deb包所使用的空間?(ubuntu,?debian類系統(tǒng))
?
7. 用戶和群組
?
groupadd?group_name?創(chuàng)建一個新用戶組 groupdel?group_name?刪除一個用戶組 groupmod?-n?new_group_name?old_group_name?重命名一個用戶組 useradd?-c?"Name?Surname?"?-g?admin?-d?/home/user1?-s?/bin/bash?user1?創(chuàng)建一個屬于?"admin"?用戶組的用戶 useradd?user1?創(chuàng)建一個新用戶 userdel?-r?user1?刪除一個用戶?(?'-r'?排除主目錄) usermod?-c?"User?FTP"?-g?system?-d?/ftp/user1?-s?/bin/nologin?user1?修改用戶屬性 passwd?修改口令 passwd?user1?修改一個用戶的口令?(只允許root執(zhí)行) chage?-E?2005-12-31?user1?設置用戶口令的失效期限 pwck?檢查?'/etc/passwd'?的文件格式和語法修正以及存在的用戶 grpck?檢查?'/etc/passwd'?的文件格式和語法修正以及存在的群組 newgrp?group_name?登陸進一個新的群組以改變新創(chuàng)建文件的預設群組
?
8. 文件的權限 使用 “+” 設置權限,使用 “-” 用于取消
?
ls?-lh?顯示權限 ls?/tmp?|?pr?-T5?-W$COLUMNS?將終端劃分成5欄顯示 chmod?ugo+rwx?directory1?設置目錄的所有人(u)、群組(g)以及其他人(o)以讀(r?)、寫(w)和執(zhí)行(x)的權限 chmod?go-rwx?directory1?刪除群組(g)與其他人(o)對目錄的讀寫執(zhí)行權限 chown?user1?file1?改變一個文件的所有人屬性 chown?-R?user1?directory1?改變一個目錄的所有人屬性并同時改變改目錄下所有文件的屬性 chgrp?group1?file1?改變文件的群組 chown?user1:group1?file1?改變一個文件的所有人和群組屬性 find?/?-perm?-u+s?羅列一個系統(tǒng)中所有使用了SUID控制的文件 chmod?u+s?/bin/file1?設置一個二進制文件的?SUID?位?-?運行該文件的用戶也被賦予和所有者同樣的權限 chmod?u-s?/bin/file1?禁用一個二進制文件的?SUID位 chmod?g+s?/home/public?設置一個目錄的SGID?位?-?類似SUID?,不過這是針對目錄的 chmod?g-s?/home/public?禁用一個目錄的?SGID?位 chmod?o+t?/home/public?設置一個文件的?STIKY?位?-?只允許合法所有人刪除文件 chmod?o-t?/home/public?禁用一個目錄的?STIKY?位 chmod?+x?文件路徑?為所有者、所屬組和其他用戶添加執(zhí)行的權限 chmod?-x?文件路徑?為所有者、所屬組和其他用戶刪除執(zhí)行的權限 chmod?u+x?文件路徑?為所有者添加執(zhí)行的權限 chmod?g+x?文件路徑?為所屬組添加執(zhí)行的權限 chmod?o+x?文件路徑?為其他用戶添加執(zhí)行的權限 chmod?ug+x?文件路徑?為所有者、所屬組添加執(zhí)行的權限 chmod?=wx?文件路徑?為所有者、所屬組和其他用戶添加寫、執(zhí)行的權限,取消讀權限 chmod?ug=wx?文件路徑?為所有者、所屬組添加寫、執(zhí)行的權限,取消讀權限
?
9. 文件的特殊屬性 ,使用 “+” 設置權限,使用 “-” 用于取消
?
chattr?+a?file1?只允許以追加方式讀寫文件 chattr?+c?file1?允許這個文件能被內核自動壓縮/解壓 chattr?+d?file1?在進行文件系統(tǒng)備份時,dump程序將忽略這個文件 chattr?+i?file1?設置成不可變的文件,不能被刪除、修改、重命名或者鏈接 chattr?+s?file1?允許一個文件被安全地刪除 chattr?+S?file1?一旦應用程序對這個文件執(zhí)行了寫操作,使系統(tǒng)立刻把修改的結果寫到磁盤 chattr?+u?file1?若文件被刪除,系統(tǒng)會允許你在以后恢復這個被刪除的文件 lsattr?顯示特殊的屬性
?
10. 打包和壓縮文件
?
bunzip2?file1.bz2?解壓一個叫做?'file1.bz2'的文件 bzip2?file1?壓縮一個叫做?'file1'?的文件 gunzip?file1.gz?解壓一個叫做?'file1.gz'的文件 gzip?file1?壓縮一個叫做?'file1'的文件 gzip?-9?file1?最大程度壓縮 rar?a?file1.rar?test_file?創(chuàng)建一個叫做?'file1.rar'?的包 rar?a?file1.rar?file1?file2?dir1?同時壓縮?'file1',?'file2'?以及目錄?'dir1' rar?x?file1.rar?解壓rar包 unrar?x?file1.rar?解壓rar包 tar?-cvf?archive.tar?file1?創(chuàng)建一個非壓縮的?tarball tar?-cvf?archive.tar?file1?file2?dir1?創(chuàng)建一個包含了?'file1',?'file2'?以及?'dir1'的檔案文件 tar?-tf?archive.tar?顯示一個包中的內容 tar?-xvf?archive.tar?釋放一個包 tar?-xvf?archive.tar?-C?/tmp?將壓縮包釋放到?/tmp目錄下 tar?-cvfj?archive.tar.bz2?dir1?創(chuàng)建一個bzip2格式的壓縮包 tar?-xvfj?archive.tar.bz2?解壓一個bzip2格式的壓縮包 tar?-cvfz?archive.tar.gz?dir1?創(chuàng)建一個gzip格式的壓縮包 tar?-xvfz?archive.tar.gz?解壓一個gzip格式的壓縮包 zip?file1.zip?file1?創(chuàng)建一個zip格式的壓縮包 zip?-r?file1.zip?file1?file2?dir1?將幾個文件和目錄同時壓縮成一個zip格式的壓縮包 unzip?file1.zip?解壓一個zip格式壓縮包
?
11. RPM 包
?
rpm?-ivh?package.rpm?安裝一個rpm包 rpm?-ivh?--nodeeps?package.rpm?安裝一個rpm包而忽略依賴關系警告 rpm?-U?package.rpm?更新一個rpm包但不改變其配置文件 rpm?-F?package.rpm?更新一個確定已經(jīng)安裝的rpm包 rpm?-e?package_name.rpm?刪除一個rpm包 rpm?-qa?顯示系統(tǒng)中所有已經(jīng)安裝的rpm包 rpm?-qa?|?grep?httpd?顯示所有名稱中包含?"httpd"?字樣的rpm包 rpm?-qi?package_name?獲取一個已安裝包的特殊信息 rpm?-qg?"System?Environment/Daemons"?顯示一個組件的rpm包 rpm?-ql?package_name?顯示一個已經(jīng)安裝的rpm包提供的文件列表 rpm?-qc?package_name?顯示一個已經(jīng)安裝的rpm包提供的配置文件列表 rpm?-q?package_name?--whatrequires?顯示與一個rpm包存在依賴關系的列表 rpm?-q?package_name?--whatprovides?顯示一個rpm包所占的體積 rpm?-q?package_name?--scripts?顯示在安裝/刪除期間所執(zhí)行的腳本l rpm?-q?package_name?--changelog?顯示一個rpm包的修改歷史 rpm?-qf?/etc/httpd/conf/httpd.conf?確認所給的文件由哪個rpm包所提供 rpm?-qp?package.rpm?-l?顯示由一個尚未安裝的rpm包提供的文件列表 rpm?--import?/media/cdrom/RPM-GPG-KEY?導入公鑰數(shù)字證書 rpm?--checksig?package.rpm?確認一個rpm包的完整性 rpm?-qa?gpg-pubkey?確認已安裝的所有rpm包的完整性 rpm?-V?package_name?檢查文件尺寸、?許可、類型、所有者、群組、MD5檢查以及最后修改時間 rpm?-Va?檢查系統(tǒng)中所有已安裝的rpm包-?小心使用 rpm?-Vp?package.rpm?確認一個rpm包還未安裝 rpm2cpio?package.rpm?|?cpio?--extract?--make-directories?*bin*?從一個rpm包運行可執(zhí)行文件 rpm?-ivh?/usr/src/redhat/RPMS/`arch`/package.rpm?從一個rpm源碼安裝一個構建好的包 rpmbuild?--rebuild?package_name.src.rpm?從一個rpm源碼構建一個?rpm?包
?
12. YUM 軟件包升級器
?
yum?install?package_name?下載并安裝一個rpm包 yum?localinstall?package_name.rpm?將安裝一個rpm包,使用你自己的軟件倉庫為你解決所有依賴關系 yum?update?package_name.rpm?更新當前系統(tǒng)中所有安裝的rpm包 yum?update?package_name?更新一個rpm包 yum?remove?package_name?刪除一個rpm包 yum?list?列出當前系統(tǒng)中安裝的所有包 yum?search?package_name?在rpm倉庫中搜尋軟件包 yum?clean?packages?清理rpm緩存刪除下載的包 yum?clean?headers?刪除所有頭文件 yum?clean?all?刪除所有緩存的包和頭文件
?
13. deb 包
?
dpkg?-i?package.deb?安裝/更新一個?deb?包 dpkg?-r?package_name?從系統(tǒng)刪除一個?deb?包 dpkg?-l?顯示系統(tǒng)中所有已經(jīng)安裝的?deb?包 dpkg?-l?|?grep?httpd?顯示所有名稱中包含?"httpd"?字樣的deb包 dpkg?-s?package_name?獲得已經(jīng)安裝在系統(tǒng)中一個特殊包的信息 dpkg?-L?package_name?顯示系統(tǒng)中已經(jīng)安裝的一個deb包所提供的文件列表 dpkg?--contents?package.deb?顯示尚未安裝的一個包所提供的文件列表 dpkg?-S?/bin/ping?確認所給的文件由哪個deb包提供 APT?軟件工具?(Debian,?Ubuntu?以及類似系統(tǒng)) apt-get?install?package_name?安裝/更新一個?deb?包 apt-cdrom?install?package_name?從光盤安裝/更新一個?deb?包 apt-get?update?升級列表中的軟件包 apt-get?upgrade?升級所有已安裝的軟件 apt-get?remove?package_name?從系統(tǒng)刪除一個deb包 apt-get?check?確認依賴的軟件倉庫正確 apt-get?clean?從下載的軟件包中清理緩存 apt-cache?search?searched-package?返回包含所要搜索字符串的軟件包名稱
?
14. 查看文件內容
?
cat?file1?從第一個字節(jié)開始正向查看文件的內容 tac?file1?從最后一行開始反向查看一個文件的內容 more?file1?查看一個長文件的內容 less?file1?類似于?'more'?命令,但是它允許在文件中和正向操作一樣的反向操作 head?-2?file1?查看一個文件的前兩行 tail?-2?file1?查看一個文件的最后兩行 tail?-f?/var/log/messages?實時查看被添加到一個文件中的內容
?
15. 文本處理
?
cat?file1?file2?...?|?command?<>?file1_in.txt_or_file1_out.txt?general?syntax?for?text?manipulation?using?PIPE,?STDIN?and?STDOUT cat?file1?|?command(?sed,?grep,?awk,?grep,?etc...)?>?result.txt?合并一個文件的詳細說明文本,并將簡介寫入一個新文件中 cat?file1?|?command(?sed,?grep,?awk,?grep,?etc...)?>>?result.txt?合并一個文件的詳細說明文本,并將簡介寫入一個已有的文件中 grep?Aug?/var/log/messages?在文件?'/var/log/messages'中查找關鍵詞"Aug" grep?^Aug?/var/log/messages?在文件?'/var/log/messages'中查找以"Aug"開始的詞匯 grep?[0-9]?/var/log/messages?選擇?'/var/log/messages'?文件中所有包含數(shù)字的行 grep?Aug?-R?/var/log/*?在目錄?'/var/log'?及隨后的目錄中搜索字符串"Aug" sed?'s/stringa1/stringa2/g'?example.txt?將example.txt文件中的?"string1"?替換成?"string2" sed?'/^$/d'?example.txt?從example.txt文件中刪除所有空白行 sed?'/?*#/d;?/^$/d'?example.txt?從example.txt文件中刪除所有注釋和空白行 echo?'esempio'?|?tr?'[]'?'[]'?合并上下單元格內容 sed?-e?'1d'?result.txt?從文件example.txt?中排除第一行 sed?-n?'/stringa1/p'?查看只包含詞匯?"string1"的行 sed?-e?'s/?*$//'?example.txt?刪除每一行最后的空白字符 sed?-e?'s/stringa1//g'?example.txt?從文檔中只刪除詞匯?"string1"?并保留剩余全部 sed?-n?'1,5p;5q'?example.txt?查看從第一行到第5行內容 sed?-n?'5p;5q'?example.txt?查看第5行 sed?-e?'s/00*/0/g'?example.txt?用單個零替換多個零 cat?-n?file1?標示文件的行數(shù) cat?example.txt?|?awk?'NR%2==1'?刪除example.txt文件中的所有偶數(shù)行 echo?a?b?c?|?awk?'{print?$1}'?查看一行第一欄 echo?a?b?c?|?awk?'{print?$1,$3}'?查看一行的第一和第三欄 paste?file1?file2?合并兩個文件或兩欄的內容 paste?-d?'+'?file1?file2?合并兩個文件或兩欄的內容,中間用"+"區(qū)分 sort?file1?file2?排序兩個文件的內容 sort?file1?file2?|?uniq?取出兩個文件的并集(重復的行只保留一份) sort?file1?file2?|?uniq?-u?刪除交集,留下其他的行 sort?file1?file2?|?uniq?-d?取出兩個文件的交集(只留下同時存在于兩個文件中的文件) comm?-1?file1?file2?比較兩個文件的內容只刪除?'file1'?所包含的內容 comm?-2?file1?file2?比較兩個文件的內容只刪除?'file2'?所包含的內容 comm?-3?file1?file2?比較兩個文件的內容只刪除兩個文件共有的部分
?
16. 字符設置和文件格式轉換
?
dos2unix?filedos.txt?fileunix.txt?將一個文本文件的格式從MSDOS轉換成UNIX unix2dos?fileunix.txt?filedos.txt?將一個文本文件的格式從UNIX轉換成MSDOS recode?..HTML??page.html?將一個文本文件轉換成html recode?-l?|?more?顯示所有允許的轉換格式
?
17. 文件系統(tǒng)分析
?
badblocks?-v?/dev/hda1?檢查磁盤hda1上的壞磁塊 fsck?/dev/hda1?修復/檢查hda1磁盤上linux文件系統(tǒng)的完整性 fsck.ext2?/dev/hda1?修復/檢查hda1磁盤上ext2文件系統(tǒng)的完整性 e2fsck?/dev/hda1?修復/檢查hda1磁盤上ext2文件系統(tǒng)的完整性 e2fsck?-j?/dev/hda1?修復/檢查hda1磁盤上ext3文件系統(tǒng)的完整性 fsck.ext3?/dev/hda1?修復/檢查hda1磁盤上ext3文件系統(tǒng)的完整性 fsck.vfat?/dev/hda1?修復/檢查hda1磁盤上fat文件系統(tǒng)的完整性 fsck.msdos?/dev/hda1?修復/檢查hda1磁盤上dos文件系統(tǒng)的完整性 dosfsck?/dev/hda1?修復/檢查hda1磁盤上dos文件系統(tǒng)的完整性
?
18. 初始化一個文件系統(tǒng)
?
mkfs?/dev/hda1?在hda1分區(qū)創(chuàng)建一個文件系統(tǒng) mke2fs?/dev/hda1?在hda1分區(qū)創(chuàng)建一個linux?ext2的文件系統(tǒng) mke2fs?-j?/dev/hda1?在hda1分區(qū)創(chuàng)建一個linux?ext3(日志型)的文件系統(tǒng) mkfs?-t?vfat?32?-F?/dev/hda1?創(chuàng)建一個?FAT32?文件系統(tǒng) fdformat?-n?/dev/fd0?格式化一個軟盤 mkswap?/dev/hda3?創(chuàng)建一個swap文件系統(tǒng)
?
19. SWAP 文件系統(tǒng)
?
mkswap?/dev/hda3?創(chuàng)建一個swap文件系統(tǒng) swapon?/dev/hda3?啟用一個新的swap文件系統(tǒng) swapon?/dev/hda2?/dev/hdb3?啟用兩個swap分區(qū)
?
20. 備份
?
dump?-0aj?-f?/tmp/home0.bak?/home?制作一個?'/home'?目錄的完整備份 dump?-1aj?-f?/tmp/home0.bak?/home?制作一個?'/home'?目錄的交互式備份 restore?-if?/tmp/home0.bak?還原一個交互式備份 rsync?-rogpav?--delete?/home?/tmp?同步兩邊的目錄 rsync?-rogpav?-e?ssh?--delete?/home?ip_address:/tmp?通過SSH通道rsync rsync?-az?-e?ssh?--delete?ip_addr:/home/public?/home/local?通過ssh和壓縮將一個遠程目錄同步到本地目錄 rsync?-az?-e?ssh?--delete?/home/local?ip_addr:/home/public?通過ssh和壓縮將本地目錄同步到遠程目錄 dd?bs=1M?if=/dev/hda?|?gzip?|?ssh?user@ip_addr?'dd?of=hda.gz'?通過ssh在遠程主機上執(zhí)行一次備份本地磁盤的操作 dd?if=/dev/sda?of=/tmp/file1?備份磁盤內容到一個文件 tar?-Puf?backup.tar?/home/user?執(zhí)行一次對?'/home/user'?目錄的交互式備份操作 (?cd?/tmp/local/?&&?tar?c?.?)?|?ssh?-C?user@ip_addr?'cd?/home/share/?&&?tar?x?-p'?通過ssh在遠程目錄中復制一個目錄內容 (?tar?c?/home?)?|?ssh?-C?user@ip_addr?'cd?/home/backup-home?&&?tar?x?-p'?通過ssh在遠程目錄中復制一個本地目錄 tar?cf?-?.?|?(cd?/tmp/backup?;?tar?xf?-?)?本地將一個目錄復制到另一個地方,保留原有權限及鏈接 find?/home/user1?-name?'*.txt'?|?xargs?cp?-av?--target-directory=/home/backup/?--parents?從一個目錄查找并復制所有以?'.txt'?結尾的文件到另一個目錄 find?/var/log?-name?'*.log'?|?tar?cv?--files-from=-?|?bzip2?>?log.tar.bz2?查找所有以?'.log'?結尾的文件并做成一個bzip包 dd?if=/dev/hda?of=/dev/fd0?bs=512?count=1?做一個將?MBR?(Master?Boot?Record)內容復制到軟盤的動作 dd?if=/dev/fd0?of=/dev/hda?bs=512?count=1?從已經(jīng)保存到軟盤的備份中恢復MBR內容
?
21. 光盤
?
cdrecord?-v?gracetime=2?dev=/dev/cdrom?-eject?blank=fast?-force?清空一個可復寫的光盤內容 mkisofs?/dev/cdrom?>?cd.iso?在磁盤上創(chuàng)建一個光盤的iso鏡像文件 mkisofs?/dev/cdrom?|?gzip?>?cd_iso.gz?在磁盤上創(chuàng)建一個壓縮了的光盤iso鏡像文件 mkisofs?-J?-allow-leading-dots?-R?-V?"Label?CD"?-iso-level?4?-o?./cd.iso?data_cd?創(chuàng)建一個目錄的iso鏡像文件 cdrecord?-v?dev=/dev/cdrom?cd.iso?刻錄一個ISO鏡像文件 gzip?-dc?cd_iso.gz?|?cdrecord?dev=/dev/cdrom?-?刻錄一個壓縮了的ISO鏡像文件 mount?-o?loop?cd.iso?/mnt/iso?掛載一個ISO鏡像文件 cd-paranoia?-B?從一個CD光盤轉錄音軌到?wav?文件中 cd-paranoia?--?"-3"?從一個CD光盤轉錄音軌到?wav?文件中(參數(shù)-3) cdrecord?--scanbus?掃描總線以識別scsi通道 dd?if=/dev/hdc?|?md5sum?校驗一個設備的md5sum編碼,例如一張?CD
?
22. 網(wǎng)絡(以太網(wǎng)和 WIFI 無線)
?
ifconfig?eth0?顯示一個以太網(wǎng)卡的配置 ifup?eth0?啟用一個?'eth0'?網(wǎng)絡設備 ifdown?eth0?禁用一個?'eth0'?網(wǎng)絡設備 ifconfig?eth0?192.168.1.1?netmask?255.255.255.0?控制IP地址 ifconfig?eth0?promisc?設置?'eth0'?成混雜模式以嗅探數(shù)據(jù)包?(sniffing) dhclient?eth0?以dhcp模式啟用?'eth0' route?-n?show?routing?table route?add?-net?0/0?gw?IP_Gateway?configura?default?gateway route?add?-net?192.168.0.0?netmask?255.255.0.0?gw?192.168.1.1?configure?static?route?to?reach?network?'192.168.0.0/16' route?del?0/0?gw?IP_gateway?remove?static?route echo?"1"?>?/proc/sys/net/ipv4/ip_forward?activate?ip?routing hostname?show?hostname?of?system host?www.example.com?lookup?hostname?to?resolve?name?to?ip?address?and?viceversa(1) nslookup?www.example.com?lookup?hostname?to?resolve?name?to?ip?address?and?viceversa(2) ip?link?show?show?link?status?of?all?interfaces mii-tool?eth0?show?link?status?of?'eth0' ethtool?eth0?show?statistics?of?network?card?'eth0' netstat?-tup?show?all?active?network?connections?and?their?PID netstat?-tupl?show?all?network?services?listening?on?the?system?and?their?PID tcpdump?tcp?port?80?show?all?HTTP?traffic iwlist?scan?show?wireless?networks iwconfig?eth1?show?configuration?of?a?wireless?network?card hostname?show?hostname host?www.example.com?lookup?hostname?to?resolve?name?to?ip?address?and?viceversa nslookup?www.example.com?lookup?hostname?to?resolve?name?to?ip?address?and?viceversa whois?www.example.com?lookup?on?Whois?database
?
23. 列出目錄內容
?
ls -a:顯示所有文件(包括隱藏文件); ls -l:顯示詳細信息; ls -R:遞歸顯示子目錄結構; ls -ld:顯示目錄和鏈接信息; ctrl+r:歷史記錄中所搜命令(輸入命令中的任意一個字符); Linux中以.開頭的文件是隱藏文件; pwd:顯示當前目錄
?
24. 查看文件的類型
?
file:查看文件的類型
?
25. 復制文件目錄
1、cp:復制文件和目錄 cp 源文件(文件夾)目標文件(文件夾)
常用參數(shù):-r:遞歸復制整個目錄樹;-v:顯示詳細信息;
復制文件夾時要在 cp 命令后面加一個-r 參數(shù):
如:cp -r 源文件夾 目標文件夾
2、touch+文件名:當文件不存在的時候,創(chuàng)建相應的文件;當文件存在的時候,修改文件的創(chuàng)建時間。
功能:生成一個空文件或修改文件的存取/修改的時間記錄值。
touch * :將當前下的文件時間修改為系統(tǒng)的當前時間
touch –d 20040210 test:將 test 文件的日期改為 20040210
touch abc :若 abc 文件存在,則修改為系統(tǒng)的當前時間;若不存在,則生成一個為當前時間的空文件
3、mv 文件 目標目錄:移動或重命名文件或目錄(如果指定文件名,則可以重命名文件)。可以將文件及目錄移到另一目錄下,或更改文件及目錄的名稱。
格式為:mv [參數(shù)]<源文件或目錄> <目標文件或目錄>
mva.txt ../:將 a.txt 文件移動上層目錄
mv a.txt b.txt:將 a.txt 改名為 b.txt
mvdir2 ../:將 dir2 目錄上移一層
4、rm:刪除文件;
常用參數(shù):-i:交互式 -r:遞歸的刪除包括目錄中的所有內容
5、mkdir +文件夾名稱:創(chuàng)建文件夾;
6、rm -r +文件夾名稱:刪除文件夾(空文件夾和非空文件夾都可刪除)
rmdir 文件夾名稱:刪除文件夾(只能刪除空文件夾)
7、mkdir -p dir1/dir2:在當前目錄下創(chuàng)建 dir1 目錄,并在 dir1 目錄下創(chuàng)建 dir2 目錄, 也就是連續(xù)創(chuàng)建兩個目錄(dir1/和 dir1/dir2)
8、rmdir –p dir1/dir2:刪除 dir1 下的 dir2 目錄,若 dir1 目錄為空也刪除它
9、rm *:刪除當前目錄下的所有文件
10、-f 參數(shù):強迫刪除文件 rm –f *.txt:強迫刪除所有以后綴名為 txt 文件
11、-i 參數(shù):刪除文件時詢問
rm –i * :刪除當前目錄下的所有文件會有如下提示:
rmis a directory 遇到目錄會略過
rm: remove ‘myfiles.txt’ ? Y
刪除文件時會詢問,可按 Y 或 N 鍵表示允許或拒絕刪除文件
12、-r 參數(shù):遞歸刪除(連子目錄一同刪除,這是一個相當常用的參數(shù))
rm -r test :刪除 test 目錄(含 test 目錄下所有文件和子目錄)
rm -r *:刪除所有文件(含當前目錄所有文件、所有子目錄和子目錄下的文件) 一般在刪除目錄時 r 和 f 一起用,避免麻煩
rm -rf test :強行刪除、不加詢問
13、grep:功能:在文件中搜索匹配的字符并進行輸出
格式:grep[參數(shù)] <要找的字串> <要尋找字 串的源文件>
greplinux test.txt:搜索 test.txt 文件中字符串 linux 并輸出
14、ln 命令
功能:在文件和目錄之間建立鏈接
格式:ln [參數(shù)] <源文件或目錄> <目標文件或目錄>
鏈接分“軟鏈接”和“硬鏈接”
1.軟鏈接:
ln–s /usr/share/do doc :創(chuàng)建一個鏈接文件 doc,并指向目錄/usr/share/do
2.硬鏈接:
ln /usr/share/test hard:創(chuàng)建一個硬鏈接文件 hard,這時對于 test 文件對應 的存儲區(qū)域來說,又多了一個文件指向它
26. 系統(tǒng)常用命令
26.1、顯示命令
date:查看或設置當前系統(tǒng)的時間:格式化顯示時間:+%Y--%m--%d;
date -s:設置當前系統(tǒng)的時間
hwclock(clock):顯示硬件時鐘時間(需要管理員權限);
cal:查看日歷
格式 cal [參數(shù)] 月年
cal:顯示當月的日歷 cal4 2004 :顯示 2004 年 4 月的日歷
cal- y 2003:顯示 2003 年的日歷
uptime:查看系統(tǒng)運行時間
26.2、輸出查看命令
echo:顯示輸入的內容 追加文件 echo "liuyazhuang" >> liuyazhuang.txt
cat:顯示文件內容,也可以將數(shù)個文件合并成一個文件。
格式:格式:cat[參數(shù)]<文件名>
cat test.txt:顯示 test.txt 文件內容
cat test.txt | more :逐頁顯示 test.txt 文件中的內容
cat test.txt >> test1.txt :將 test.txt 的內容附加到 test1.txt 文件之后
cat test.txt test2.txt >readme.txt : 將 test.txt 和 test2.txt 文件合并成 readme.txt 文件
head:顯示文件的頭幾行(默認 10 行) -n:指定顯示的行數(shù)格式:head -n 文件名
tail:顯示文件的末尾幾行(默認 10 行)-n:指定顯示的行數(shù) -f:追蹤顯示文件更新 (一般用于查看日志,命令不會退出,而是持續(xù)顯示新加入的內容)
格式:格式:tail[參數(shù)]<文件名>
tail-10 /etc/passwd :顯示/etc/passwd/文件的倒數(shù) 10 行內容
tail+10 /etc/passwd :顯示/etc/passwd/文件從第 10 行開始到末尾的內容
more:用于翻頁顯示文件內容(只能向下翻頁)
more 命令是一般用于要顯示的內容會超過一個畫面長度的情況。為了避免畫 面顯示時瞬間就閃過去,用戶可以使用 more 命令,讓畫面在顯示滿一頁時暫停,此時可按空格鍵繼續(xù)顯示下一個畫面,或按 Q 鍵停止顯示。
ls -al |more:以長格形式顯示 etc 目錄下的文件列表,顯示滿一個畫面便暫停,可 按空格鍵繼續(xù)顯示下一畫面,或按 Q 鍵跳離
less:翻頁顯示文件內容(帶上下翻頁)按下上鍵分頁,按 q 退出、‘
less 命令的用法與 more 命令類似,也可以用來瀏覽超過一頁的文件。所不同 的是 less 命令除了可以按空格鍵向下顯示文件外,還可以利用上下鍵來卷動文件。當要結束瀏覽時,只要在 less 命令的提示符“:”下按 Q 鍵即可。
ls -al | less:以長格形式列出/etc 目錄中所有的內容。用戶可按上下鍵瀏覽或按 Q 鍵跳離
26.3、查看硬件信息
Ispci:查看 PCI 設備 -v:查看詳細信息
Isusb:查看 USB 設備 -v:查看詳細信息
Ismod:查看加載的模塊(驅動)
26.4、關機、重啟
shutdown 關閉、重啟計算機
shutdown[關機、重啟]時間 -h 關閉計算機 -r:重啟計算機
如:立即關機:shutdown -h now
10 分鐘后關機:shutdown -h +10
23:30 分關機:shutdown -h 23:30
立即重啟:shutdown -r now
poweroff:立即關閉計算機
reboot:立即重啟計算機
26.5、歸檔、壓縮
zip:壓縮文件 zip liuyazhuang.zip myfile 格式為:“zip 壓縮后的 zip 文件文件名”
unzip:解壓文件 unzip liuyazhuang.zip
gzip:壓縮文件 gzip 文件名
tar:歸檔文件
tar -cvf out.tar liuyazhuang 打包一個歸檔(將文件"liuyazhuang"打包成一個歸檔)
tar -xvf liuyazhuang.tar 釋放一個歸檔(釋放 liuyazhuang.tar 歸檔)
tar -cvzf backup.tar.gz/etc
-z 參數(shù)將歸檔后的歸檔文件進行 gzip 壓縮以減少大小。
-c:創(chuàng)建一個新 tar 文件
-v:顯示運行過程的信息
-f:指定文件名
-z:調用 gzip 壓縮命令進行壓縮
-t:查看壓縮文件的內容
-x:解開 tar 文件
tar -cvf test.tar *:將所有文件打包成 test.tar,擴展名.tar 需自行加上
tar -zcvf test.tar.gz *:將所有文件打包成 test.tar,再用 gzip 命令壓縮
tar -tf test.tar :查看 test.tar 文件中包括了哪些文件
tar -xvf test.tar 將 test.tar 解開
tar -zxvf foo.tar.gz 解壓縮
gzip 各 gunzip 命令
gziptest.txt :壓縮文件時,不需要任何參數(shù)
gizp–l test.txt.gz:顯示壓縮率
26.6、查找
locate:快速查找文件、文件夾:locate keyword
此命令需要預先建立數(shù)據(jù)庫,數(shù)據(jù)庫默認每天更新一次,可用 updatedb 命令手工建立、更新數(shù)據(jù)庫。歡迎關注我們,公號終碼一生。
find 查找位置查找參數(shù)
如:
find . -nameliuyazhuang查找當前目錄下名稱中含有"liuyazhuang"的文件
find / -name *.conf 查找根目錄下(整個硬盤)下后綴為.conf 的文件
find / -perm 777 查找所有權限是 777 的文件
find / -type d 返回根目錄下所有的目錄
find . -name "a*"-exec ls -l {} ;
find 功能:用來尋找文件或目錄。
格式:find [<路徑>][匹配條件]
find / -name httpd.conf 搜索系統(tǒng)根目錄下名為 httpd.conf 的文件
26.7、ctrl+c :終止當前的命令
26.8、who 或 w 命令
功能:查看當前系統(tǒng)中有哪些用戶登錄
格式:who/w[參數(shù)]
26.9、dmesg 命令
功能:顯示系統(tǒng)診斷信息、操作系統(tǒng)版本號、物理內存的大小以及其它信息
26.10、df 命令
功能:用于查看文件系統(tǒng)的各個分區(qū)的占用情況
26.11、du 命令
功能:查看某個目錄中各級子目錄所使用的硬盤空間數(shù)
格式:du [參數(shù)] <目錄名>
26.12、free 命令
功能:用于查看系統(tǒng)內存,虛擬內存(交換空間)的大小占用情況
27. VIM
VIM 是一款功能強大的命令行文本編輯器,在 Linux 中通過 vim 命令可以啟動 vim 編輯器。
一般使用 vim + 目標文件路徑 的形式使用 vim
如果目標文件存在,則 vim 打開目標文件,如果目標文件不存在,則 vim 新建并打開該文件
:q:退出 vim 編輯器
VIM 模式
vim 擁有三種模式:
(1)命令模式(常規(guī)模式)
vim 啟動后,默認進入命令模式,任何模式都可以通過 esc 鍵回到命令模式(可以多按幾次),命令模式下可以鍵入不同的命令完成選擇、復制、粘貼、撤銷等操作。
命名模式常用命令如下:
i : 在光標前插入文本;
o:在當前行的下面插入新行;
dd:刪除整行;
yy:將當前行的內容放入緩沖區(qū)(復制當前行)
n+yy :將 n 行的內容放入緩沖區(qū)(復制 n 行)
p:將緩沖區(qū)中的文本放入光標后(粘貼)
u:撤銷上一個操作
r:替換當前字符
/ 查找關鍵字
(2)插入模式
在命令模式下按 " i "鍵,即可進入插入模式,在插入模式可以輸入編輯文本內容,使用 esc 鍵可以返回命令模式。
(3)ex 模式
在命令模式中按" : "鍵可以進入 ex 模式,光標會移動到底部,在這里可以保存修改或退出 vim.
ext 模式常用命令如下:
:w :保存當前的修改
:q :退出
:q! :強制退出,保存修改
:x :保存并退出,相當于:wq
:set number 顯示行號
:! 系統(tǒng)命令 執(zhí)行一個系統(tǒng)命令并顯示結果
:sh :切換到命令行,使用 ctrl+d 切換回 vim
28. 軟件包管理命令(RPM)
28.1、軟件包的安裝
使用 RPM 命令的安裝模式可以將軟件包內所有的組件放到系統(tǒng)中的正確路徑,安裝軟件包的命令是:rpm –ivh wu-ftpd-2.6.2-8.i386.rpm
i:作用 rpm 的安裝模式 v: 校驗文件信息 h: 以#號顯示安裝進度
28.2、軟件包的刪除
刪除模式會將指定軟件包的內容全部刪除,但并不包括已更改過的配置文件,刪除 RPM 軟件包的命令如下:rpm –e wu-ftpd
注意:這里必須使用軟件名“wu-ftpd”或”wu-ftpd-2.6.2-8 而不是使用當初安裝時的軟件包名.wu-ftpd-2.6.2-8.i386.rpm
28.3、軟件包升級
升級模式會安裝用戶所指定的更新版本,并刪除已安裝在系統(tǒng)中的相同軟件包,升級軟件包命令如下:rpm –Uvh wu-ftpd-2.6.2-8.i386.rpm –Uvh:升級參數(shù)
28.4、軟件包更新
更新模式下,rpm 命令會檢查在命令行中所指定的軟件包是否比系統(tǒng)中原有的軟件 包更新。如果情況屬實,rpm 命令會自動更新指定的軟件包;反之,若系統(tǒng)中并沒有指定軟件包的較舊版本,rpm 命令并不會安裝此軟件包。而在升級模式下,不管系統(tǒng)中是否有較舊的版本,rpm 命令都會安裝指定的軟件包。
rpm –Fvhwu-ftpd-2.6.2-8.i386.rpm -Fvh:更新參數(shù)
28.5、軟件包查詢
若要獲取 RPM 軟件包的相關信息,可以使用查詢模式。使用-q 參數(shù)可查詢一個已 安裝的軟件包的內容
rpm –q wu-ftpd
查詢軟件包所安裝的位置:rpm –ql package-name
rpm –ql xv (l 參數(shù):顯示文件列表)
好了,今天就介紹到這里,覺得不錯了,如果覺得有用,可以先收藏了!
?
審核編輯:湯梓紅
評論
查看更多