一. 基本命令
1. cd:用來切換路徑,后面可以跟相對路徑,也可以跟絕對路徑。
PS:相對路徑和絕對路徑
當前目錄: 1個點代表當前目錄,也可以直接寫當前目錄下的文件,如下兩種寫法是等效的。
2. ls:顯示對應目錄下的文件。
PS:Linux文件或者目錄名稱最長可以有265個字符,“.”代表當前目錄,“..”代表上一級目錄,以“.”開頭的文件為隱藏文件,需要用 -a 參數才能顯示。
A. 直接ls顯示當前目錄下的文件。
B. 后面可以路徑,相對路徑和絕對路徑都可以
C. 三個常用參數
【ls -l】和【ls -lh】
【ls -alh】 等價於 【ll】
D. 合理使用通配符(了解即可)
3. pwd:顯示當前路徑
4. clear:清屏 (或者快捷鍵:ctrl+l)
5. ctrl+c:輸入完一行命令后不想執行,快速跳到下一行。
6. tab鍵:自動補全
7. history:顯示歷史輸入過的命令
8. 幫助:--help 和 man
eg:查看ls相關的用法可以 【ls --help】和【man ls】
9. tree:以樹的形式顯示當前目錄下的文件
10. sudo :用超級用戶的權限執行命令
基於安全考慮,一般不建議使用超級用戶權限登錄 linux;而是平時使用低權限用戶訪問,需要高權限的操作再用 sudo 后跟着指令。比如在/下無法創建文件夾,但是 sudo mkdir a 就可以,當然需要輸入密碼。su 就是“super user”的簡寫,sudo 就是“用超級用戶權限執行命令”
二. 文件磁盤相關
1. touch: 創建文件
2. mkdir:創建目錄(文件夾)
PS:創建一個級聯目錄,需要加 -p 參數,比如創建 test/ypf1/ypf2
3. rmdir:刪除目錄
可使用rmdir命令刪除一個目錄。必須離開目錄,並且目錄必須為空目錄,不然提示刪除失敗。
建議直接使用 rm 命令。
4. rm:刪除文件或目錄
(1).【rm xxx】 簡單粗暴直接刪除單個文件或非空的文件夾
(2). 【rm xxx -r】:強制遞歸刪除文件夾
5. 顯示相關
(1). more/less:分屏顯示
【more 1.txt】 分頁顯示1.txt的內容。
每次只顯示一頁,按“空格”鍵,顯示下一頁; 按“回車”鍵,顯示下一行;按“q”鍵,退出。
PS:less和more的功能類似,不過less可以通過PgUp、PgDn鍵來控制。
(2). tail:顯示文件后幾行內容
[tail -10 1.txt] : 顯示文件1.txt后10行內容。
[tail -f 1.txt]: 動態顯示1.txt的內容變化。
ctrl +c : 結束查看。
6. |:管道
管道:前面命令的輸出 可以通過管道做為 后面命令的輸入。
管道我們可以理解現實生活中的管子,管子的一頭塞東西進去,另一頭取出來,這里“ | ”的左右分為兩端,左端塞東西(寫),右端取東西(讀)。
eg: 【ls -lh bin | more】表示:把bin下的內容分頁輸出
【ps -ef|grep nginx】:查詢nginx的進程
【ifconfig|more】:將網絡信息分頁輸出。
7. cat: 查看或者合並文件
(1). 查看文件內容
(2).重定向 > 和 >>
eg:用1.txt和2.txt的內容覆蓋3.txt的內容
eg:把1.txt和2.txt的內容追加到3.txt的內容的后面
8. grep:文本搜索
案例:
擴展:
案例:
9. find:查找文件
find命令功能非常強大,通常用來在特定的目錄下搜索符合條件的文件,也可以用來搜索特定用戶屬主的文件。
案例:
10. cp:復制文件
(1). 普通文件的復制
命令組合:【cp 需復制的文件 目標文件夾】
(2). 目錄含有內容的復制
命令組合:【cp 需要復制的文件夾 目標文件夾 -r】
(3). 復制到目標目錄后修改名字
命令組合:【cp 1.txt Test/11.txt】表示把當前目錄1.txt文件復制到當前目錄Test文件夾中,並且保存為11.txt
11. mv:移動(剪切)文件/目錄 或 給文件/目錄重命名
(1). 文件重命名
命令組合:【mv 原文件名 新文件名】
(2) . 文件的移動
命令組合:【mv 需移動的文件 目標文件夾】
注:移動哪個文件必須在該文件所在的目錄執行指令哦。
12. tar:歸檔管理
總結: tar命令位於/bin目錄下,它能夠將用戶所指定的文件或目錄打包成一個文件,但不做壓縮。一般Linux上常用的壓縮方式是選用tar將許多文件打包成一個文件,再以gzip壓縮命令壓縮成xxx.tar.gz(或稱為xxx.tgz)的文件。
常用參數:
-c:創建一個新tar文件
-v:顯示運行過程的信息
-f:指定文件名
-z:調用gzip壓縮命令進行壓縮
-t:查看壓縮文件的內容
-x:解開tar文件
打包:
tar –cvf xxx.tar ./* 省略顯示過程 【tar -cf xxx.tar ./*】
打包並且壓縮:
tar –zcvf xxx.tar.gz ./* 省略顯示過程 【tar -zcf xxx.tar.gz ./*】
解壓tar包
tar –xvf xxx.tar 省略顯示過程:【tar -xf xxx.tar】 也可以加上-C解壓到指定目錄 ,eg:【tar -xf xxx.tar -C /usr/aaa】
解壓tar包和gz壓縮文件
tar -zxvf xxx.tar.gz -C /usr/aaa 省略顯示過程:【tar -zxf xxx.tar.gz -C /usr/aaaa】 可以省略-C,解壓到當前目錄, eg:【tar -zxf xxx.tar.gz】
下面是詳細說明:
(1). 打包命令 【tar -cvf 打包后的文件名 文件名】 v可以省略(不顯示壓縮詳情),多個文件的時候用空格隔開,也可以使用表達式,比如 *代表所有文件。
案例1:把1.txt 和2.txt 打包,打包的文件名為:myTab1.tar
案例2:把當前目錄下的所有文件打包,打包的文件名為:myTab2.tar
(2). 解包命令 【tar -xvf 包文件】v可以省略(不顯示壓縮詳情)
案例:將myTab1.tar解包
PS:打包和壓縮的區別,打包並沒有對原文件進行壓縮,只是簡單的歸檔而已。
13. 文件的壓縮和解壓
tar與gzip命令結合使用實現文件打包、壓縮。 tar只負責打包文件,但不壓縮,用gzip壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz。
(1). 壓縮和解壓:gzip
A. 壓縮
案例1:直接對打包后的文件myTab1.tar進行壓縮
【gzip myTab1.tar】:直接壓縮,生成壓縮后的文件為myTab1.tar.gz, 原文件myTab1.tar消失。 推薦!!
【gzip -r myTab1.tar myTab1.tar.gz】:壓縮后的文件為myTab1.tar.gz,原文件myTab1.tar消失。 等價上面的【gzip myTab1.tar】
案例2: 直接對當前目錄下的所有文件進行打包和壓縮 推薦!!
【tar -zcf allFile1.tar.gz *】 (若要顯示過程則為:【tar -zcvf allFile1.tar.gz *】)
B. 解壓
案例1:對壓縮文件myTab1.tar.gz進行解壓成打包文件 (這里是是將壓縮文件解壓成打包文件,並不是實際文件集合)
【gzip -d myTab1.tar.gz】:解壓后的文件為myTab1.tar,原文件myTab1.tar.gz消失
案例2:對壓縮文件myTab1.tar.gz直接解壓成文件集合,解壓到當前目錄 推薦!!
【tar -zxf allFile1.tar.gz 】 (若要顯示過程則為:【tar -zxvf allFile1.tar.gz】)
案例3:對壓縮文件myTab1.tar.gz直接解壓成文件集合,解壓到file2目錄中 推薦!!
【tar -zxf allFile1.tar.gz -C file2/】 (若要顯示過程則為:【tar -zxvf allFile1.tar.gz -C file2/】)
(2). 壓縮和解壓:bzip2
tar與bzip2命令結合使用實現文件打包、壓縮(用法和gzip一樣)。
tar只負責打包文件,但不壓縮,用bzip2壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz2。
在tar命令中增加一個選項(-j) 可以調用bzip2實現了一個壓縮的功能,實行一個先打包后壓縮的過程。
壓縮用法:【tar -jcvf 壓縮包包名 文件...(tar jcvf bk.tar.bz2 *.c)】 v可以省略
解壓用法:【tar -jxvf 壓縮包包名 (tar jxvf bk.tar.bz2)】 v可以省略
(3). 壓縮和解壓:zip和unzip
通過zip壓縮文件的目標文件不需要指定擴展名,默認擴展名為zip。
壓縮文件:【zip -r 目標文件(沒有擴展名) 源文件】
解壓文件:【unzip -d 解壓后目錄文件 壓縮文件】
14. which:查看命令位置
15. ln:建立鏈接文件(了解)
Linux鏈接文件類似於Windows下的快捷方式。鏈接文件分為軟鏈接和硬鏈接。
軟鏈接:軟鏈接不占用磁盤空間,源文件刪除則軟鏈接失效。
硬鏈接:硬鏈接只能鏈接普通文件,不能鏈接目錄。
命令組合:
注:如果軟鏈接文件和源文件不在同一個目錄,源文件要使用絕對路徑,不能使用相對路徑。
案例:
三. 系統管理
1. cal:查看日歷
2. date:查看日期
3. ps:查看進程信息
查看所有進程:【ps -aux】 或者 【ps -ef】 , 前者顯示的內容更多一些。
查看某個進程:【ps -ef|grep xxx】,eg:查看nginx進程 【ps -ef|grep nginx】
4. top:動態顯示進程信息
top命令用來動態顯示運行中的進程。top命令能夠在運行后,在指定的時間間隔更新顯示信息。可以在使用top命令時加上-d 來指定顯示信息更新的時間間隔。
5. kill:終止進程
有些進程不能直接殺死,這時候我們需要加一個參數“ -9 ”,“ -9 ” 代表強制結束:
常用組合:
【kill pid】 殺死某個進程
【kill pid -9】 強制殺死某個進程
6. 關機重啟:reboot、shutdown、init
7. df:檢測磁盤空間
常用組合【sudo df -m】
8. du:檢測目錄所占的磁盤空間
du命令用於統計目錄或文件所占磁盤空間的大小,該命令的執行結果與df類似,du更側重於磁盤的使用狀況。
9. ifconfig:查看和配置網卡信息
10. ping:測試遠程主機的連通性
Ctrl+C:終止ping
11. netstat -ntlp :查看端口占用情況
!
- 作 者 : Yaopengfei(姚鵬飛)
- 博客地址 : http://www.cnblogs.com/yaopengfei/
- 聲 明1 : 如有錯誤,歡迎討論,請勿謾罵^_^。
- 聲 明2 : 原創博客請在轉載時保留原文鏈接或在文章開頭加上本人博客地址,否則保留追究法律責任的權利。