Linux常用操作命令

[b]一、文件和目錄操作[/b]
[b]1. pwd--顯示工作目錄路徑[/b]
語法: #pwd
功能:顯示當前用戶所處的工作目錄的絕對路徑。

[b]2. cd--更改工作目錄路徑[/b]
語法:cd [目錄名]
功能:更改工作目錄路徑,可以使用絕對或相對路徑名,絕對路徑從/(根)開始,相對路徑從當前目錄開始。
示例:
#cd /etc //更改工作目錄爲/etc
#cd .. //更改工作目錄爲當前目錄的父目錄
#cd ~ //更改工作目錄爲用戶登錄時的工作目錄
#cd ~tong //更改工作目錄爲用戶tong的宿主目錄

[b]3. ls--列出子目錄和文件信息[/b]
語法:ls [選項] [目錄或是文件]
功能:對於目錄,該命令將列出其中的所有子目錄與文件信息;對於文件,該命令將輸出其文件名以及所要求的其它信息。
選項:
-a:顯示指定目錄下所有子目錄與文件,包括隱藏文件
-A:顯示指定目錄下所有子目錄與文件,包括隱藏文件,但不列出"."和'..'
-b:對文件名中的不可顯示字符用八進制字符顯示
-c:按文件的修改時間順序顯示
-F:在目錄名後面標記"/",可執行文件後面標記"*",符號鏈接後面標記"@",管理或FIFO後面標記"|",socket文件後面標記"="
-l:以長格式來顯示文件的詳細信息,第1列顯示文件訪問權限,第2列顯示文件的鏈接數,第3列顯示文件的所有者,第4列顯示文件的用戶組名,第5列顯示文件的字節數,第6、7、8列顯示文件上一次修改時間,第9列顯示文件名(文件名前帶有"."的爲隱藏文件)
示例:
#ls -al //顯示當前目錄所有文件、目錄的詳細信息

[b]4. touch--創建空文件、更改文件時間[/b]
語法:touch [-acfm] [-d<日期時間>] [-r<參考文件或目錄>] [-t<日期時間>] [文件]
功能:創建空文件、更改文件的創建時間
選項:
-a:改變文件的修改時間記錄
-m:改變文件的修改時間記錄
-c:假如文件不存在,不會建立新的文件
-d:設定時間與日期
-t:設定文件的時間記錄
示例:
#touch filename //創建空文件
#touch -c -t 01012014 filename //將文件filename的時間記錄修改爲2014年1月1日

[b]5. mkdir--創建目錄[/b]
語法:mkdir [選項] [目錄名]
功能:創建目錄
選項:
-m:對新建目錄設置權限,沒有-m選項時,默認權限是755
-p:可以是一個路徑,若路徑中某些目錄不存在,會自動創建不存在的目錄

[b]6. rmdir--刪除空目錄[/b]
語法:rmdir [選項] [目錄名]
功能:刪除空目錄
選項:
-p:遞歸刪除多個目錄,當子目錄刪除後父目錄爲空時也一同刪除

[b]7. cp--複製文件和目錄[/b]
語法:cp [源文件或目錄] [目標文件或目錄]
功能:複製文件和目錄
選項:
-a:複製目錄時使用,它保留鏈接、文件屬性,並遞歸地複製目錄
-d:複製時保留鏈接
-f:在覆蓋目標文件之前不給出提示信息要求用戶確認
-i:與-f相反,回答y時文件將被覆蓋
-p:將修改時間和訪問權限也複製到新文件
-r:若源文件是一個目錄,將複製該目錄下所有的子目錄和文件
-l:不作拷貝,只是鏈接文件
示例:
#cp ex.c /log //將文件ex.c複製到/log下
#cp -i ex1.c /log/ex2.c //將文件ex1.c複製到/log下,並改名爲ex2.c
#cp -r /log1/ /log2/ //將log1目錄下的所有文件複製到目錄log2下

[b]8. mv--文件和目錄改名、移動文件和目錄路徑[/b]
語法:mv [選項] [源文件或目錄] [目標文件或目錄]
功能:文件和目錄改名、移動文件和目錄路徑
選項:
-i:提示是否覆蓋提示
-f:不提示
示例:
#mv /root/log/*.log /root/log2 //將/root/log後綴爲log的文件移到/root/log2目錄下
#mv /root/log/1.log /root/log/2.log //將/root/log目錄下1.log重命名爲2.log
#mv /root/log1 /root/log2 //將log1目錄名改爲log2

[b]9. rm--刪除文件和目錄[/b]
語法:rv [選項] [文件或目錄]
功能:刪除文件和目錄,對於鏈接文件,只是斷開鏈接,原文件保持不變
選項:
-i:給出提示
-f:不給出提示
-r:指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除
示例:
#rm log //刪除當前目錄下的log文件

[b]10. wc--統計文件字節數、字數、行數[/b]
語法:wc [選項] [文件]
功能:統計文件字節數、字數、行數
選項:
-c:統計字節數
-l:統計行數
-w:統計字數

[b]二、文本顯示和處理[/b]
[b]1. cat--顯示文本文件[/b]
語法:cat [選項] [文件名]
功能:顯示文本文件或把幾個文件內容附加到另一個文件中
選項:
-n:由1開始對所有輸出的行數編號。
-b:和-n相似,只不過對於空白行不編號。
-s:當遇到有連續兩行以上的空白行,就代換爲一行空白行。
-e:在每行末尾顯示$符號
示例:
#cat -n text1 > text2 //把text1的內容加上行號後輸入到text2
#cat -n text1 text2 >> text3 //把text1和text2的內容加上行號後輸入到text3

[b]2. more--分頁顯示文本文件[/b]
語法:more [-dlfpcsu] [-num] [文件名]
功能:分頁顯示文本文件,空格顯示下頁,b鍵返回上一頁
選項:
-num:一次顯示的行數
+num:從第num行開始顯示
-s:將連續兩行以上的空白行代換爲一行空白行
-f:按實際的行數而非自動換行過後的行數
-p:不以捲動的方式顯示每一頁,而是先清除屏幕後再顯示內容

[b]3. less--回捲顯示文本文件[/b]
語法:less [選項] [文件名]
功能:和more相似,不同的是less允許使用都往回捲動
選項:
-E:第一次到文件尾後自動退出
-s:將多個空行壓縮成一個空行

[b]4. head--顯示指定文件前若干行[/b]
語法:head [選項] [文件名]
功能:顯示指定文件前若干行
選項:
-n:輸出文件的前n行內容,缺省時顯示文件的前10行
示例:
#head -5 a.log //查看a的前5行內容

[b]5. tail--查看文件末尾數據[/b]
語法:tail [選項] [文件名]
功能:查看文件末尾數據
選項:
-c:顯示文件後部的n個字符
+n:從第n行以後開始顯示
-n:從距文件末尾n行處開始顯示,默認爲10
-f:顯示自動刷新
示例:
#tail -5 a.log //查看a的最後5行內容

[b]6. sort--排序顯示文件[/b]
語法:sort [選項] [文件名]
功能:可以對文件中的數據進行排序,並將結果顯示在標準輸出上。
選項:
-m:若給定的文件已排好序,合併文件
-u:對排序後認爲相同的行只保留其中一行。
-r:按逆序輸出排序結果
-M:按月份比較

[b]7. uniq--將重複行從輸出文件中刪除[/b]
語法: uniq [選項] [文件名]
功能:使用uniq命令可以將文件內的重複行數據從輸出文件中刪除,只留下每條記錄的唯一樣本。
選項:
-c:在每行首加上本行在文件中出現的次數
-d:只顯示重複行
-u:只顯示不重複的行

[b]8. cut--從文件每行中顯示出選定的字節、字符或字段[/b]
語法: cut {-b List [-n] | -c List | -f List [-s] [-d Character]} [文件名]
功能:使用cut命令可以從文件的每行中顯示出選定的字節、字符或字段。
選項:
-f:指定文件中設想被定界符隔開的字段的列表(在List中)
-d:使用Character變量指定的字符作爲定界符,用戶必須在對Shell有特殊意義的字符上加上引號

[b]9. comm--比較兩個已排過序的文件[/b]
語法:comm [選項] [文件名1] [文件名2]
功能:對兩個已經排好序的文件進行比較,並將其結果顯示出來
選項:
-1:不顯示僅在文件1中存在的行
-2:不顯示僅在文件2中存在的行
-3:不顯示在文件1,文件2中都存在的行

[b]10. diff--逐行比較兩個文本文件,列出其不同之處[/b]
語法:diff [選項] [文件名1] [文件名2]
功能:逐行比較兩個文本文件,列出其不同之處。它對給出的文件進行系統的檢查,並顯示出兩個文件中所有不同的行,不要求事先對文件進行排序
選項:
-b:忽略行尾的空格
-c:採用上下文輸出格式
-r:當文件1和文件2是目錄時,遞歸作用到各文件和目錄上

[b]11. tac--反向顯示文本文件[/b]
語法:tac [選項] [文件名]
功能:由最後一行到第一行反向在屏幕上顯示出來。

[b]三、文件和命令的查找[/b]
[b]1. grep--查找文件中符合條件的字符串[/b]
語法: grep [可選] [字符串] [文件名]
功能:查找文件裏符合條件的字符串
選項:
-c:只顯示匹配的行數
-I:忽略字母大小寫
-n:輸出時加上行號
-v:反轉查找,只顯示不包含指定字符串的行
-x:只顯示整行嚴格匹配的行
示例:
#grep "test" error* //在所有以error開頭的文件名的文件中查找包括test字符串的行

[b]2. find--列出文件系統中符合條件的文件或目錄[/b]
語法:find [路徑] [選項] -print
功能:將文件系統內符合條件的文件列出來,可以指定文件的名稱、類別、時間、大小、權限等不同信息的組合
選項:
-name:按照文件名來查找文件
-perm:按照文件名來查找文件
-user:按照文件屬主來查找文件
-group:按照文件所屬的組來查找文件
-cmin n:在過去n分鐘內被修改過的文件
-ctime n:在過去n天內被修改的文件
-size n:大小爲n的文件
-type:查找某一類型的文件
示例:
#find -name "*.log" -print //查找以.log結尾的文件(同#find *.log)
#find . -cmin -10 //查找最近10分鐘更新過的文件

[b]3. locate--在數據庫中查找文件[/b]
語法:locate
功能:使用locate命令可以用於查找文件,比find命令的搜索速度快,它需要一個數據庫,這個數據庫由每天的例行工作(crontab)程序來建立。當建立好這個數據庫後,就可以方便地搜尋所需文件了

[b]4. whereis--查找指定文件、命令和手冊頁位置[/b]
語法:whereis [選項] [要查找的字符串]
功能:使用whereis命令可以查找指定文件、命令和手冊頁的位置。
選項:
-b 只查找二進制文件
-m 只查找說明文件
-s 只查找源代碼文件

[b]5. file--查詢文件類型[/b]
語法:file [選項] [文件名]
功能:使用file命令可以查詢指定文件的文件類型。

[b]6. whatis--查詢命令功能[/b]
語法:whatis [命令]
功能:使用whatis命令可以查詢指定命令的命令功能。

[b]7. which--顯示可執行命令路徑[/b]
語法:which [命令]
功能:顯示可執行命令路徑

[b]四、進程管理[/b]
[b]1. ps--監控後臺進程的工作情況[/b]
語法:ps [選項] [/b]
功能:監控後臺進程的工作情況
選項:
-a:顯示所有用戶進程
-e:顯示進程環境變量
-l:給出詳細的信息列表
-r:只顯示正在運行的進程
-w:按寬格式顯示輸出
-u:打印用戶格式,顯示用戶名和進程的起始時間
示例:
ps -ef | grep wa-query //查詢wa-query應該是否在運行

[b]2. top--動態顯示當前正運行的進程[/b]
語法:top [bciqsS] [d <間隔秒數>] [n <執行次數>]
功能:動態監控後臺進程的工作情況,不設置時默認每5秒更新一次,按q鍵退出
選項:
-b:使用批處理模式
-c:列出程序時顯示每個程序的完整命令
-d:設置刷新的間隔時間
-i:執行top命令時忽略閒置或是已成爲Zombie的程序
-n:設置監控信息的更新次數
-q:持續監控程序執行的狀況
-s:使用保密模式,消除互動模式下的潛在危機
-S:使用累計模式

[b]3. kill--結束進程[/b]
語法:kill [選項] [進程號]
功能:結束進程
選項:
-9:無條件撤銷一個進程

[b]五、網絡測試命令[/b]
[b]1. ifconfig--顯示或設置網卡IP地址[/b]
語法:ifconfig [選項]
功能:顯示或設置網卡IP地址

[b]2. ping--測試網絡的連通性[/b]
語法:ping [ip地址]
功能:測試網絡的連通性

[b]3. netstat--顯示網絡狀態信息[/b]
語法:netstat [選項]
功能:顯示網絡狀態信息,包括連線信息、路由表、端口等
選項:
-a:顯示所有連線中的Socket
-l:顯示監控中的服務器的Socket
-p:顯示正在使用Socket的程序識別碼和程序名稱
-r:顯示路由表
-s:顯示網絡工作信息統計表
-t:顯示TCP傳輸協議的連線狀況
-u:顯示UDP傳輸協議的連線狀況
示例:
#netstat | grep 8080 //查看8080端口的網絡狀態

[b]六、其它命令[/b]
[b]1. clear--清除屏幕上的信息[/b]
語法:clear
功能:清除屏幕上的信息

[b]2. shutdown--關閉和啓動系統[/b]
語法:shutdown [選項] [時間] [警告信息]
功能:shutdown命令可以安全的關閉或重啓系統,只能由超級用戶使用
選項:
-k:並不真正關機,只是發出警告信息給所有用戶
-r:關機後立即重新啓動
-h:關機後不重新啓動
-f:快速關機,重啓時跳過fsck
-n:快速關機,不經過init程序
-c:取消一個已經運行的shutdown
-time:設定關機前的時間
示例:
#shutdown -h now //立即關閉系統
#shutdown -r 45 "system will be reboot now!" //45分鐘後重啓系統並警告

[b]3. help--查看命令幫助[/b]
語法:[命令] --help
功能:查看命令幫助

[b]4. 查看軟硬件信息[/b]
查看計算機CPU信息:#cat /proc/cpuinfo
查看主機DMA通道信息:#cat /proc/dma
查看文件系統信息:#cat /proc/filesystems
查看主機中斷信息:#cat /proc/interrupts
查看主機I/O端口號信息:#cat /proc/ioports
查看計算機內存信息:#cat /proc/meminfo
查看Linux版本信息:#cat /proc/version
查看板卡信息: #cat /proc/pci

[b]七、操作[/b]
[b]1. 通配符[/b]
?:代表任何單一字符
*:代表任何字符
[..]:在中括號中的字符皆符合
[!..]:不在中括號中的字符皆符合

[b]2. 常用控制鍵組合[/b]
Ctrl+C:中止目前的命令
Ctrl+\:中止目前的命令
Ctrl+D:輸入結束,或註銷Linux
Ctrl+Z:暫停目前的命令
Ctrl+M:相當於按“Enter”鍵
Ctrl+S:暫停屏幕輸出
Ctrl+Q:恢復屏幕輸出
Ctrl+U:將命令列整列刪除

Ctrl+k:刪除從光標到行尾的部分
Ctrl+u:刪除從光標到行首的部分
Alt+d:刪除從光標到當前單詞結尾的部分
Ctrl+w:刪除從光標到當前單詞開頭的部分
Ctrl+a:將光標移動到行首
Ctrl+e:將光標移動到行尾
Alt+a:將光標移到當前單詞頭部
Alt+e:將光標移動到當前單詞尾部
Ctrl+y:插入最近刪除的單詞
!$:重複前一個命令最後的參數

[b]3. Shell實用功能[/b]
Tab:命令行自動補全
↑↓:遍歷命令歷史記錄

[b]4. 重定向[/b]
輸出重定向:[命令] > file //將命令的輸出保存到文件file中,如果存在相同的文件則覆蓋file中的內容
輸入重定向:[命令] < file //將文件file的內容作爲命令的輸入
錯誤重定向:[命令] 2> file //將命令執行的出錯信息輸出保存到文件file中
追加重定向:[命令] >> file //將命令的輸出添加到已存在的文件file中
同時實現輸出和錯誤的重定向:[命令] &> file //將命令的輸出和出錯信息都保存到文件file中

[b]5. vi編輯器的基本使用方法[/b]
進入vi編輯器:vi [文件名] //進入vi後,系統處於命令模式,要切換到插入模式才能夠輸入文字
切換到插入模式編輯文件:i //按"ESC"退回到命令模式
退出並保存文件:在命令模式下,按冒號":"進入末行模式,輸入"wq"存盤並退出vi,輸入"q!"不存盤強制退出vi
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章