Linux-學習筆記-02
一、上堂回顧
系統設定:/etc 跟使用者有關的檔案【使用者名稱和密碼】
vim
su:切換使用者
目錄結構
/:根目錄
/home:家目錄,儲存的是普通使用者的使用者名稱【目錄】
/etc
/tmp:存放是程式執行的臨時檔案,系統會定期清理
快捷鍵
常用命令:
1.檢視文件
histroy
2.檔案管理
ls:列出指定目錄下的所有的內容
ls -l:顯示內容的詳細資訊
ls -a:顯示隱藏檔案
ls -a -l ---->ls -al---->ll【組合命令】
pwd:檢視當前工作的目錄
cd:切換工作目錄,根據指定的目錄切換
cd .
cd ..
cd 路徑【相對路徑】
一、常用命令
1.檔案管理
1>檢視檔案
cat:檢視完整的檔案內容 -n :顯示每一行的行號,包括空行 -b :顯示每一行的行號,不包括空行 #直接使用cat檢視檔案,將檔案中的內容輸出到終端 #-n和-b,都會給內容進行編號,但是-b不包含空行 演示命令: [email protected]:~$ pwd /home/yangyang [email protected]
:~$ cd Desktop/ [email protected]:~/Desktop$ ls a1.txt [email protected]:~/Desktop$ cat a1.txt tgjrgjrg jsfehgjf shgbjawrg jgnfgjgn gf hh hfs h ht hhhs [email protected]:~/Desktop$ cat -n a1.txt 1 tgjrgjrg 2 jsfehgjf 3 4 5 6 shgbjawrg 7 jgnfgjgn 8 9 10 gf 11 12 hh 13 14 hfs 15 h 16 ht 17 hhhs 18 19 20 21 22[email protected]:~/Desktop$ cat -b a1.txt 1 tgjrgjrg 2 jsfehgjf 3 shgbjawrg 4 jgnfgjgn 5 gf 6 hh 7 hfs 8 h 9 ht 10 hhhs head:檢視檔案內容 #檢視檔案中的頭部內容,預設只檢視前10行 #-num,可以手動指定需要檢視的行數 演示命令: [email protected]:~/Desktop$ head a1.txt tgjrgjrg jsfehgjf shgbjawrg jgnfgjgn gf [email protected]:~/Desktop$ head -2 a1.txt tgjrgjrg jsfehgjf tail:檢視檔案內容 #檢視檔案中的尾部內容,預設只檢視後10行 #-num,可以手動指定需要檢視的行數 演示命令: [email protected]:~/Desktop$ tail a1.txt hfs h ht hhhs [email protected]:~/Desktop$ tail -2 a1.txt less:檢視檔案 #按下enter向下翻一行,按下空格鍵向下翻一頁,按上下箭頭鍵可以向上或者向下翻行,按下q退出,類似於man 演示命令: [email protected]:~/Desktop$ less a1.txt more:檢視檔案 #當檔案內容較少的時候,和cat的用法完全相同,將內容輸出到終端;當檔案內容較多的時候,建議使用more,通過空格鍵和enter鍵控制翻頁和翻行 演示命令: [email protected]:~/Desktop$ more a1.txt tgjrgjrg jsfehgjf shgbjawrg jgnfgjgn gf hh hfs h ht hhhs wc:一次顯示檔案行數,位元組數以及檔名資訊 #並不是檢視檔案內容,檢視檔案屬性 演示命令: [email protected]:~/Desktop$ wc a1.txt 22 10 69 a1.txt stat:檢視檔案詳細資訊,可以獲取檔案的檔名、大小、許可權,最近訪問以及最近更改的時間,stat命令的輸出資訊比ls命令還要詳細 #檢視檔案資訊,使用ls更多 演示命令: [email protected]:~/Desktop$ stat a1.txt 檔案:'a1.txt' 大小:69 塊:8 IO 塊:4096 普通檔案 裝置:801h/2049d Inode:525551 硬連結:1 許可權:(0644/-rw-r--r--) Uid:( 1000/yangyang) Gid:( 1000/ rock) 最近訪問:2018-09-05 17:20:17.975441550 +0800 最近更改:2018-09-05 17:19:14.987440150 +0800 最近改動:2018-09-05 17:19:14.991440150 +0800 建立時間:- file:檢視檔案的型別 演示命令: [email protected]:~/Desktop$ file a1.txt a1.txt: ASCII text echo:用於在終端輸出字串或變數的值 演示命令: [email protected]:~/Desktop$ echo "hello" hello |:管道 #作用:將一個命令的輸出,作為另一個命令的輸入 #幫助理解:這裡的|分為左右,左端寫內容,右端讀取內容 #【掌握】 重定向 >:輸出重定向,Linux允許將執行結果重定向到一個檔案,本應顯示在終端上的內容儲存到指定檔案中 #如果檔案不存在,則會自動建立;如果檔案存在,則會覆蓋檔案中的內容 #特殊情況:如果檔案不存在,則先建立檔案,然後才重定向 #w 演示命令: [email protected]:~/Desktop$ ls a1.txt [email protected]:~/Desktop$ ls > a2.txt [email protected]:~/Desktop$ ls a1.txt a2.txt [email protected]:~/Desktop$ cat a2.txt a1.txt a2.txt [email protected]:~/Desktop$ ls -l > a2.txt [email protected]:~/Desktop$ cat a2.txt 總用量 4 -rw-r--r-- 1 yangyang rock 69 9月 5 17:19 a1.txt -rw-r--r-- 1 yangyang rock 0 9月 5 17:43 a2.txt [email protected]:~/Desktop$ cat a1.txt > a3.txt [email protected]:~/Desktop$ cat a1.txt tgjrgjrg jsfehgjf shgbjawrg jgnfgjgn gf hh hfs h ht hhhs [email protected]:~/Desktop$ cat a3.txt tgjrgjrg jsfehgjf shgbjawrg jgnfgjgn gf hh hfs h ht hhhs >>:輸出重定向,Linux允許將執行結果重定向到一個檔案,本應顯示在終端上的內容儲存到指定檔案中 #注意:和>之間的區別:如果檔案不存在,則會自動建立;如果檔案存在,則將重定向的內容追加到檔案中 #a 演示命令: [email protected]:~/Desktop$ ls >> text.txt [email protected]:~/Desktop$ ls a1.txt a2.txt a3.txt text.txt [email protected]:~/Desktop$ cat text.txt a1.txt a2.txt a3.txt text.txt [email protected]:~/Desktop$ cat a2.txt >> text.txt [email protected]:~/Desktop$ cat text.txt a1.txt a2.txt a3.txt text.txt 總用量 4 -rw-r--r-- 1 yangyang rock 69 9月 5 17:19 a1.txt -rw-r--r-- 1 yangyang rock 0 9月 5 17:43 a2.txt #【瞭解】 1> 標準正確輸出,同上 #類似於>的操作,會覆蓋 1>> 標準正確輸出,同上 #類似於>>的操作,會追加 演示命令: [email protected]:~/Desktop$ cat a2.txt 1> a4.txt [email protected]:~/Desktop$ cat a4.txt 總用量 4 -rw-r--r-- 1 yangyang rock 69 9月 5 17:19 a1.txt -rw-r--r-- 1 yangyang rock 0 9月 5 17:43 a2.txt 2> 標準錯誤輸出,同上 #如果使用錯誤輸出的話,則將錯誤資訊寫入到指定檔案中 2>> 標準錯誤輸出,同上 &> 標準正確輸出和標準錯誤輸出,同上 將1和2結合在一起了
2>tree 以樹形結構去顯示目錄結構
-d:只顯示目錄 -f:顯示檔案的完整路徑 -L num:只檢視前num級的目錄 #注意:和ls的作用類似,只不過tree可以以目錄的層級關係顯示結果
3>mv 移動或者重新命名檔案或者目錄
#move #格式:mv [選項] 原始檔 [目標路徑|目標檔名] -i:在目標檔案存在的時候會詢問是否需要覆蓋【互動式操作】 -b:當發生衝突的時候,會對原始檔進行備份 演示命令:
4>cp 複製檔案或者目錄
#copy #格式:cp [引數] 原始檔 目標目錄 -i:在目標檔案存在的時候會詢問是否需要覆蓋【互動式操作】 #如果檔案不存在,則不出現任何提示,如果檔案已經存在,則提示是否需要覆蓋,輸入y或者n進行判斷 -a:複製的時候保持原始檔的屬性 -f:對於已經存在的目標檔案不提示 -v:顯示拷貝進度 -r:若給出的原始檔是一個目錄檔案,此時cp將遞迴複製原始檔下的所有的內容,此時目標檔案必須是一個目錄名 在Linux下,複製分為三種情況: a.如果目標檔案是目錄,則將原檔案複製到該目錄下 b.如果目標檔案是普通檔案,則需要詢問是否需要覆蓋該檔案 c.如果目標檔案不存在的,則執行正常的複製操作
5>建立檔案或者目錄
#1.mkdir 建立一個新的目錄 make directory -p:創建出具有巢狀關係的目錄 #2.touch 建立一個新的檔案,空白檔案、 名詞解釋: atime:最後一次訪問檔案或者目錄的時間【access time】 mtime:最後一次修改內容的時間【modify time】 ctime:最後一次修改屬性的時間【change time】 -a:修改atime -m:修改mtime -c:修改ctime -d:同時修改atime和mtime -t:同時修改atime和mtime【格式:{YYYYMMDDhhmmss}】 演示命令:
6>刪除檔案或者目錄
#1.rmdir:刪除指定的目錄,注意:只能刪除空目錄 #remove #2.rm:刪除檔案或者目錄,可以刪除一個目錄中的一個或者多個檔案以及目錄, -r:刪除目錄,rm預設只能刪除檔案 -ri:互動刪除,每次刪除都會 進行詢問,如果是一個目錄,則依次進入每個子目錄進行詢問 -rf:不管目錄下有沒有內容,強制刪除目錄或者檔案
7>ln 建立連結檔案
注意:Linux下面的連結檔案相當於Windows下的快捷方式 分類: 硬連結:只能連結普通檔案,不能連結目錄 軟連結:不佔用磁碟空間,原始檔刪除則軟連結隨著失效 軟連結:ln -s 原始檔 連結檔案 硬連結:ln 原始檔 連結檔案 【總結】 對於軟連結而言,如果軟連結檔案和原始檔不在同一個目錄下,則原始檔最好使用絕對路徑 對於硬連結而言,兩個檔案佔用相同大小的磁碟空間,即使刪除了原始檔,連結檔案仍然正常使用 所以,軟連結是更常用的形態
8>grep 文字搜尋
文字搜尋工具,允許對文字檔案進行模式查詢,如果匹配到指定的模式,則在終端中顯示匹配到的內容 注意:搜尋內容可以是正則表示式 -c:僅僅顯示找到的行數 -i:忽略大小寫 -n:顯示匹配的行以及行號 -v:反向選擇,列出沒有關鍵字的行【求反】
9>which 查詢其他命令所在的位置
#注意:獲取的是指定的linux存在的位置,一般情況下存放於/bin
10>type 尋找命令所在的位置,包括命令別名
-a:可以找到所有,包括別名 #type和which之間的區別,type優先列出指定命令的別名,如果命令沒有別名,則列出指定命令所在的位置
11>find 按照指定條件來查詢檔案
#格式:find 【查詢路徑】 【查詢方式】 【查詢條件】 -name:匹配名稱,預設是精確匹配 -size:匹配檔案大小 -empty:匹配是否為空的檔案 #注意:以後如果在眾多的檔案中需要篩選指定的檔案,優先選用find
12>locate 查詢資料
-i:忽略大小寫 -c:不輸出查詢的結果,僅輸出找到的檔案的數量 -l:僅輸出指定的行 ,格式:-l num ,輸出num行 #說明:locate是在資料庫中進行查詢資料的,如果資料沒有則在資料庫中查詢不到 touch aa.txt locate aa.txt---->沒有查詢到結果 資料庫沒有更新
13>sort 給檔案內容排序
-f:忽略大小寫的差異,A和a被認為是相同的編碼 -b:忽略文字最前面的空格部分 -n:使用純數字進行排序 -r:反向排序 -u:唯一的,相同的資料中,僅出現一行代表 -t:tab,分隔符,預設使用tab鍵分隔 -k:以哪個指定的區間進行排序 演示命令: [email protected]:~/Desktop$ cat a1.txt hello abc good html linux fhjhgjadhgjhgja gafejfghanhjghh gjafghjahgj fjfgnjf [email protected]:~/Desktop$ sort a1.txt abc fhjhgjadhgjhgja fjfgnjf gafejfghanhjghh gjafghjahgj good hello html linux [email protected]:~/Desktop$ cat a1.txt hello abc good html linux fhjhgjadhgjhgja gafejfghanhjghh gjafghjahgj fjfgnjf [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt [email protected]:~/Desktop$ cat b.txt 43434:fhshfh:64756745 96976:ghsjghj:fhsfhg 12010:eyye474:574875fhdjhvhj [email protected]:~/Desktop$ sort -t b.txt sort: 多字元標籤"b.txt" [email protected]:~/Desktop$ sort -t ":" b.txt 12010:eyye474:574875fhdjhvhj 43434:fhshfh:64756745 96976:ghsjghj:fhsfhg [email protected]:~/Desktop$ sort -t ":" -k 2 b.txt 12010:eyye474:574875fhdjhvhj 43434:fhshfh:64756745 96976:ghsjghj:fhsfhg [email protected]:~/Desktop$ sort -t ":" -k 3 b.txt 12010:eyye474:574875fhdjhvhj 43434:fhshfh:64756745 96976:ghsjghj:fhsfhg [email protected]:~/Desktop$ cat a1.txt hello abc good html linux fhjhgjadhgjhgja gafejfghanhjghh gjafghjahgj fjfgnjf Fghjfgh Abc [email protected]:~/Desktop$ sort -f a1.txt abc Abc Fghjfgh fhjhgjadhgjhgja fjfgnjf gafejfghanhjghh gjafghjahgj good hello html linux
14>cut 可以從一個文字檔案或者文字流中提取文字列
-d:後面接分隔符。與-f一起使用 -f:依據-d的分隔符將一段資訊分隔成數段,用-f表示提取出第幾段的意思 -c:以字元為單位取出固定字元區間【-:連線,取的是和的意思,1-3表示1,2,3,但是,1,3表示1和3】 演示命令: [email protected]:~/Desktop$ touch aa.txt [email protected]:~/Desktop$ locate aa.txt [email protected]:~/Desktop$ [email protected]:~/Desktop$ cat a1.txt hello abc good html linux fhjhgjadhgjhgja gafejfghanhjghh gjafghjahgj fjfgnjf Fghjfgh Abc [email protected]:~/Desktop$ cut -d "f" -f 1 a1.txt hello abc good html linux ga gja Fghj Abc [email protected]:~/Desktop$ cut -c 1 a1.txt h a g h l f g f F A [email protected]:~/Desktop$ cut -c 1,3 a1.txt hl ac go hm ln fj gf ff Fh Ac [email protected]:~/Desktop$ cat a1.txt hello abc good html linux fhjhgjadhgjhgja gafejfghanhjghh gjafghjahgj fjfgnjf Fghjfgh Abc [email protected]:~/Desktop$ cut -c 1-3 a1.txt hel abc goo htm lin fhj gaf fjf Fgh Abc
15>tee 讀取標準輸入的資料,並將其內容輸出成檔案
-a:讀取原始檔內容,並追加新的內容,如果不設定該選項,則新的內容直接覆蓋掉舊的內容 #注意:從終端向指定檔案中寫入內容,和cat的功能相反 演示命令: [email protected]:~$ cd Desktop/ [email protected]:~/Desktop$ cat a1.txt [email protected]:~/Desktop$ tee a1.txt hello hello jfjfgfg jfjfgfg hgjfehgjg hgjfehgjg ^C #ctrl + c 終止命令 [email protected]:~/Desktop$ cat a1.txt hello jfjfgfg hgjfehgjg [email protected]:~/Desktop$ tee -a a1.txt 467365 467365 54785475 54785475 ^C [email protected]:~/Desktop$ cat a1.txt hello jfjfgfg hgjfehgjg 467365 54785475 [email protected]:~/Desktop$ cat b.txt 43434:fhshfh:64756745 96976:ghsjghj:fhsfhg 12010:eyye474:574875fhdjhvhj [email protected]:~/Desktop$ cat a1.txt b.txt hello jfjfgfg hgjfehgjg 467365 54785475 43434:fhshfh:64756745 96976:ghsjghj:fhsfhg 12010:eyye474:574875fhdjhvhj [email protected]:~/Desktop$ tee a1.txt b.txt gjseg gjseg hgjshgj hgjshgj hngjhshg hngjhshg ^C [email protected]:~/Desktop$ cat a1.txt b.txt gjseg hgjshgj hngjhshg gjseg hgjshgj hngjhshg
16>gedit 開啟Linux下的文字編輯器
gedit :開啟一個新的空的文件 gedit 指定路徑:開啟指定的文件
17>sed 流編輯器,一次處理一行內容,主要用來自動編輯一個或多個檔案
格式:[-nefr] [動作] [檔案] 選項: -e<script>或--expression=<script>:以選項中的指定的script來處理輸入的文字檔案; -f<script檔案>或--file=<script檔案>:以選項中指定的script檔案來處理輸入的文字檔案; -h或--help:顯示幫助; -n或--quiet或——silent:僅顯示script處理後的結果; -V或--version:顯示版本資訊。 引數: 檔案:指定待處理的文字檔案列表。 命令: a\ 在當前行下面插入文字。 i\ 在當前行上面插入文字。 c\ 把選定的行改為新的文字。 d 刪除,刪除選擇的行。 D 刪除模板塊的第一行。 s 替換指定字元 h 拷貝模板塊的內容到記憶體中的緩衝區。 H 追加模板塊的內容到記憶體中的緩衝區。 g 獲得記憶體緩衝區的內容,並替代當前模板塊中的文字。 G 獲得記憶體緩衝區的內容,並追加到當前模板塊文字的後面。 l 列表不能列印字元的清單。 n 讀取下一個輸入行,用下一個命令處理新的行而不是用第一個命令。 N 追加下一個輸入行到模板塊後面並在二者間嵌入一個新行,改變當前行號碼。 p 列印模板塊的行。 P(大寫) 列印模板塊的第一行。 q 退出Sed。 b lable 分支到指令碼中帶有標記的地方,如果分支不存在則分支到指令碼的末尾。 r file 從file中讀行。 t label if分支,從最後一行開始,條件一旦滿足或者T,t命令,將導致分支到帶有標號的命令處,或者到指令碼的末尾。 T label 錯誤分支,從最後一行開始,一旦發生錯誤或者T,t命令,將導致分支到帶有標號的命令處,或者到指令碼的末尾。 w file 寫並追加模板塊到file末尾。 W file 寫並追加模板塊的第一行到file末尾。 ! 表示後面的命令對所有沒有被選定的行發生作用。 = 列印當前行號碼。 # 把註釋擴充套件到下一個換行符以前。 sed替換標記 g 表示行內全面替換。 p 表示列印行。 w 表示把行寫入一個檔案。 x 表示互換模板塊中的文字和緩衝區中的文字。 y 表示把一個字元翻譯為另外的字元(但是不用於正則表示式) \1 子串匹配標記 & 已匹配字串標記 sed元字符集 ^ 匹配行開始,如:/^sed/匹配所有以sed開頭的行。 $ 匹配行結束,如:/sed$/匹配所有以sed結尾的行。 . 匹配一個非換行符的任意字元,如:/s.d/匹配s後接一個任意字元,最後是d。 * 匹配0個或多個字元,如:/*sed/匹配所有模板是一個或多個空格後緊跟sed的行。 [] 匹配一個指定範圍內的字元,如/[ss]ed/匹配sed和Sed。 [^] 匹配一個不在指定範圍內的字元,如:/[^A-RT-Z]ed/匹配不包含A-R和T-Z的一個字母開頭,緊跟ed的行。 \(..\) 匹配子串,儲存匹配的字元,如s/\(love\)able/\1rs,loveable被替換成lovers。 & 儲存搜尋字元用來替換其他字元,如s/love/**&**/,love這成**love**。 \< 匹配單詞的開始,如:/\<love/匹配包含以love開頭的單詞的行。 \> 匹配單詞的結束,如/love\>/匹配包含以love結尾的單詞的行。 x\{m\} 重複字元x,m次,如:/0\{5\}/匹配包含5個0的行。 x\{m,\} 重複字元x,至少m次,如:/0\{5,\}/匹配至少有5個0的行。 x\{m,n\} 重複字元x,至少m次,不多於n次,如:/0\{5,10\}/匹配5~10個0的行。 #1.a\:追加,a後面可以接字串,新的字串會出現在當前行的下一行 #2.i\:插入,i後面可以接字串,新的字串會出現在當前行的上一行 #3.s:替換, #4.d:刪除, #sed的作用:獲取檔案中的內容,根據指定的條件或者操作進行篩選【增刪改查】
18>打包和壓縮
打包:將一大堆檔案或者目錄彙總成一個總的檔案或者目錄
壓縮:通過壓縮演算法將大的檔案變成較小的檔案
說明;在Linux中,很多壓縮程式只能針對一個檔案進行壓縮,如果當向壓縮多個檔案時,則可以先將多個檔案打包成一個檔案【tar】,然後再使用壓縮命令將其進行壓縮【gzip或者bzip2】
a.tar 可以把一大堆的檔案和目錄全部打包成一個檔案
-A或--catenate:新增檔案到已存在的備份檔案; -B:設定區塊大小;-c或--create:建立新的備份檔案; -C <目錄>:這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項。 -d:記錄檔案的差別; -x或--extract或--get:從備份檔案中還原檔案; -z或--gzip或--ungzip:通過gzip指令處理備份檔案; -Z或--compress或--uncompress:通過compress指令處理備份檔案; -f<備份檔案>或--file=<備份檔案>:指定備份檔案; -v或--verbose:顯示指令執行過程; -r:新增檔案到已經壓縮的檔案; -u:新增改變了和現有的檔案到已經存在的壓縮檔案; -j:支援bzip2解壓檔案; -v:顯示操作過程; -l:檔案系統邊界設定; -k:保留原有檔案不覆蓋; -m:保留檔案不被覆蓋; -w:確認壓縮檔案的正確性; -p或--same-permissions:用原來的檔案許可權還原檔案; -P或--absolute-names:檔名使用絕對名稱,不移除檔名稱前的“/”號; -N <日期格式> 或 --newer=<日期時間>:只將較指定日期更新的檔案儲存到備份檔案裡; --exclude=<範本樣式>:排除符合範本樣式的檔案。 演示命令: [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt text.txt [email protected]:~/Desktop$ tar -cvf log.tar a1.txt a1.txt [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt log.tar text.txt [email protected]:~/Desktop$ rm -rf log.tar [email protected]:~/Desktop$ tar -zcvf log.tar.gz a1.txt a1.txt [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt log.tar.gz text.txt [email protected]:~/Desktop$ rm -rf log.tar.gz ` > ^C [email protected]:~/Desktop$ rm -rf log.tar.gz [email protected]:~/Desktop$ tar -jcvf log.tar.bz2 a1.txt a1.txt [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt log.tar.bz2 text.txt [email protected]:~/Desktop$ tar -xf log.tar.bz2 [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt log.tar.bz2 text.txt [email protected]:~/Desktop$ rm -rf log.tar.bz2 #注意 a.選項-cvf後面的名字是自定義的,習慣上使用.tar結尾,表示是一個已經被打包的檔案【只打包,不壓縮】 b.選項使用-zcvf,則以.tar.gz結尾,代表使用gzip壓縮過的【打包之後使用gzip壓縮】 c.選項使用-jcvf,則以.tar.bz2結尾,代表使用bzip2壓縮過的
b.gzip 對檔案進行壓縮和解壓縮,壓縮之後用“.gz”作為副檔名
還可以和tar命令一起構成Linux作業系統中比較流行的壓縮檔案格式
好處:gzip命令對檔案有60%~70%的壓縮率,減小檔案的好處:減少儲存空間,通過網路傳輸檔案的時候,可以節省時間
-d或--decompress或----uncompress:解開壓縮檔案; -f或——force:強行壓縮檔案。不理會檔名稱或硬連線是否存在以及該檔案是否為符號連線; -l或——list:列出壓縮檔案的相關資訊; -L或——license:顯示版本與版權資訊; -n或--no-name:壓縮檔案時,不儲存原來的檔名稱及時間戳記; -N或——name:壓縮檔案時,儲存原來的檔名稱及時間戳記; -q或——quiet:不顯示警告資訊; -r或——recursive:遞迴處理,將指定目錄下的所有檔案及子目錄一併處理; -t或——test:測試壓縮檔案是否正確無誤; -v或——verbose:顯示指令執行過程; -V或——version:顯示版本資訊; #-rv:將指定目錄下的檔案遞迴遍歷,並挨個進行壓縮 #-dr;遞迴解壓 演示命令: [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt text.txt [email protected]:~/Desktop$ gzip * gzip: aa is a directory -- ignored [email protected]:~/Desktop$ ls a1.txt.gz A1.txt.gz aa aa.txt.gz b.txt.gz text.txt.gz [email protected]:~/Desktop$ gzip -dv * a1.txt.gz: 4.3% -- replaced with a1.txt A1.txt.gz: 0.0% -- replaced with A1.txt gzip: aa is a directory -- ignored aa.txt.gz: 0.0% -- replaced with aa.txt b.txt.gz: 4.3% -- replaced with b.txt text.txt.gz: 2.4% -- replaced with text.txt [email protected]:~/Desktop$ ls a1.txt A1.txt aa aa.txt b.txt text.txt [email protected]:~/Desktop$ gzip -l * gzip: a1.txt: not in gzip format gzip: A1.txt: unexpected end of file [email protected]:~/Desktop$ gzip * gzip: aa is a directory -- ignored [email protected]:~/Desktop$ gzip -l * compressed uncompressed ratio uncompressed_name 47 23 4.3% a1.txt 27 0 0.0% A1.txt gzip: aa is a directory -- ignored 27 0 0.0% aa.txt 46 23 4.3% b.txt 68 42 2.4% text.txt 215 88 -113.6% (totals) [email protected]:~/Desktop$ touch file1.txt [email protected]:~/Desktop$ gzip -r file1.txt [email protected]:~/Desktop$ ls a1.txt.gz A1.txt.gz aa aa.txt.gz b.txt.gz file1.txt.gz text.txt.gz [email protected]:~/Desktop$ mkdir check [email protected]:~/Desktop$ cd check/ [email protected]:~/Desktop/check$ touch a.txt [email protected]:~/Desktop/check$ touch b.txt [email protected]:~/Desktop/check$ mkdir aa [email protected]:~/Desktop/check$ ls aa a.txt b.txt [email protected]:~/Desktop/check$ cd .. [email protected]:~/Desktop$ gzip -rv check check/a.txt: 0.0% -- replaced with check/a.txt.gz check/b.txt: 0.0% -- replaced with check/b.txt.gz [email protected]:~/Desktop$ gzip -dr check [email protected]:~/Desktop$ cd check/ [email protected]:~/Desktop/check$ ls aa a.txt b.txt
2.系統管理
1>date:檢視當前時間
2>cal:檢視當前日曆
3>ping;檢測網路的連通性
4>ifconfig:檢視ip地址
演示命令: [email protected]:~/Desktop/check$ cd .. [email protected]:~/Desktop$ cd .. [email protected]:~$ date 2018年 09月 06日 星期四 00:05:17 CST [email protected]:~$ cal 九月 2018 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 [email protected]:~$ cal -y 2018 一月 二月 三月 日 一 二 三 四 五 六 日 一 二 三 四 五 六 日 一 二 三 四 五 六 1 2 3 4 5 6 1 2 3 1 2 3 7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10 14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17 21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24 28 29 30 31 25 26 27 28 25 26 27 28 29 30 31 四月 五月 六月 日 一 二 三 四 五 六 日 一 二 三 四 五 六 日 一 二 三 四 五 六 1 2 3 4 5 6 7 1 2 3 4 5 1 2 8 9 10 11 12 13 14 6 7 8 9 10 11 12 3 4 5 6 7 8 9 15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 11 12 13 14 15 16 22 23 24 25 26 27 28 20 21 22 23 24 25 26 17 18 19 20 21 22 23 29 30 27 28 29 30 31 24 25 26 27 28 29 30 七月 八月 九月 日 一 二 三 四 五 六 日 一 二 三 四 五 六 日 一 二 三 四 五 六 1 2 3 4 5 6 7 1 2 3 4 1 8 9 10 11 12 13 14 5 6 7 8 9 10 11 2 3 4 5 6 7 8 15 16 17 18 19 20 21 12 13 14 15 16 17 18 9 10 11 12 13 14 15 22 23 24 25 26 27 28 19 20 21 22 23 24 25 16 17 18 19 20 21 22 29 30 31 26 27 28 29 30 31 23 24 25 26 27 28 29 30 十月 十一月 十二月 日 一 二 三 四 五 六 日 一 二 三 四 五 六 日 一 二 三 四 五 六 1 2 3 4 5 6 1 2 3 1 7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8 14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15 21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22 28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29 30 31 [email protected]:~$ ping www.baidu.com PING www.a.shifen.com (119.75.216.20) 56(84) bytes of data. 64 bytes from 127.0.0.1 (119.75.216.20): icmp_seq=1 ttl=54 time=20.7 ms 64 bytes from 127.0.0.1 (119.75.216.20): icmp_seq=2 ttl=54 time=20.6 ms 64 bytes from 127.0.0.1 (119.75.216.20): icmp_seq=14 ttl=54 time=20.9 ms ^C --- www.a.shifen.com ping statistics --- 14 packets transmitted, 14 received, 0% packet loss, time 13027ms rtt min/avg/max/mdev = 19.443/22.452/37.996/5.723 ms [email protected]:~$ ifconfig ens33 Link encap:乙太網 硬體地址 00:0c:29:4d:b0:75 inet 地址:10.12.153.25 廣播:10.12.153.255 掩碼:255.255.255.0 inet6 地址: fe80::7752:3537:1163:101c/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 躍點數:1 接收資料包:325684 錯誤:0 丟棄:0 過載:0 幀數:0 傳送資料包:1787 錯誤:0 丟棄:0 過載:0 載波:0 碰撞:0 傳送佇列長度:1000 接收位元組:20914292 (20.9 MB) 傳送位元組:138709 (138.7 KB) lo Link encap:本地環回 inet 地址:127.0.0.1 掩碼:255.0.0.0 inet6 地址: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 躍點數:1 接收資料包:354 錯誤:0 丟棄:0 過載:0 幀數:0 傳送資料包:354 錯誤:0 丟棄:0 過載:0 載波:0 碰撞:0 傳送佇列長度:1000 接收位元組:37987 (37.9 KB) 傳送位元組:37987 (37.9 KB) [email protected]:~$