每一天的堅持雖然有些累,但是卻有一定的收穫。在今天特殊的日子裡,我依舊平靜的過…….
常見兩種壓縮格式
gzip 壓縮比不是很高,但是壓縮時間快
bzip2 壓縮比很高,壓縮時間很長。 以時間換取空間
壓縮
gzip filename,壓縮完成後,原始檔是不存在的
bzip2 filename壓縮完成後,原始檔是不存在的
以上兩種只是一次壓縮乙個,而且不能對目錄進行壓縮,於是
zip filename.zip filename(s)
壓縮格式 壓縮後的檔名 需要壓縮的檔案。。。
可以一次性壓縮多個檔案或者目錄,壓縮完成後,原始檔仍然存在
例:
gzip filename
bzip2 filename
zip done.zip filename1 filename2
解壓縮
gunzip filename
bunzip2 filename
unzip filename
例:
gunzip filename.gz
bunzip2 filename.bz2
unzip done.zip
歸檔,把小檔案合併成乙個大檔案,便於複製,移動等操作tar [cvf] package_name filename(s)歸檔
tar cvf[z/j] package_name filename(s)歸檔壓縮
例:
tar cvf all.tar file1 file2 file3
all.tar:歸檔後的檔案全名 file1,file2,file3要歸檔的檔案
tar cvfz done.tar.gz file1 file2 file3
done表示歸檔壓縮後的檔名, .tar表示歸檔檔案,.gz表示壓縮格式是gzip
cvf 歸檔 cvfz 加z表示以gzip格式進行壓縮
tar cvfj done.tar.bz2 file1 file2 file3 …解檔done.tar.bz2 done表示歸檔壓縮後的檔名, tar表示歸檔檔案,bz2表示壓縮格式是bzip2
cvfj 加j表示以bzip2格式進行壓縮
tar xvf 解檔硬鏈結 和軟鏈結tar xvfj package_name 解檔解壓縮,檔案格式是 以bzip2 壓縮的檔案,如done.tar.bz2
tar xvfz package_name 解檔解壓縮,檔案格式是 以gzip 壓縮的檔案,如done.tar.gz
ln [-s] source_file destination_file不加 -s 是硬鏈結.硬鏈結可防止誤刪檔案, 相當於起別名,比如:原有檔案為/etc/passwd, 我建立了p1.h, p2.h,然後刪除passwd檔案,依舊可以使用more命令檢視p1.h的 內容。它所刪除的只是乙個別名(鏈結號),對於磁碟的儲存內容是不受影響的。如果完全刪除所有鏈結號,檔案(索引釋放)才會不存在。如果不重寫或者覆蓋資料塊,資料塊的內容還是存在的,然後找到相對應的索引,就還可以找到對應的內容,這就是所謂的恢復刪除檔案。反之,則不存在
借圖說下檔案查詢順序,這樣便於理解硬鏈結刪除和建立
為了方便說明原理,以下軟硬鏈結編號均為假設,可以自己去嘗試尋找它的真實編號。 命令ls -i
檔案儲存分為索引區和資料區。索引區存放檔案屬性資訊,資料區存放真正的內容。我們這裡假設索引區的每一塊編號為1,2,3,4…..,資料塊編號為1000,1001,1002,…… 我們使用ls命令的時候,看到的資訊就是索引塊的資訊,使用more命令的時候,就是通過資料塊編號找到資料塊的內容。
我們的passwd索引塊是4號對應的passwd資料塊編號是1002,使用more檢視的時候,就是呼叫passwd索引塊的屬性資訊中的資料塊編號去調資料塊中的內容。
那麼我們怎麼知道passwd索引塊就是4號塊呢?
我們來看,etc是乙個目錄,它也需要自己的索引塊,假定它的索引塊是1號塊,資料塊編號是1001,1號塊存放的就是etc的屬性資訊,除此以外,最後一項放的是資料塊的編號。資料塊含有若干項,每項分為兩部分,第一部分子目錄或者名字,第二部分放passwd的索引編號4。同理;etc的索引塊呢,又是它上一層目錄所得來的,直到根目錄,根目錄為固定編號。當建立硬鏈結的時候,就會在etc資料塊中新加入乙個子項,一部分是名字,一部分是編號,如圖中p1.h,p2 它們都是相同的檔案,大小相同。只是入口不同,但是所指向的其實都是4號索引塊,所以當你刪除其中的乙個,是不會影響其他的,但是鏈結數會減少,當所有的入口都刪除完了,那麼就不存在索引塊 了,只剩下資料塊中的內容了。 這個上面有提到。說了這麼多,其實就是共享原始檔的索引。
整個查詢順序:
etc索引塊—>etc資料塊—》passwd索引塊,取出資料塊編號—>passwd資料塊–>內容
加-s 是軟連線
軟鏈結相當於windows上的快捷方式,可以建立在任何目錄下。同樣舉例,原有檔案為passwd, 我建立了p1.h.s, p2.h.s,然後刪除passwd檔案,這個時候使用more命令檢視p1.h.s的 內容。會告訴你找不到這個檔案或者目錄。
看圖
編號全是假設,真實的自己可查。前半部分與硬鏈結相同,不再重複。
這裡建立軟鏈結的時候,軟鏈結的編號將不會再試4,而會有變化,這裡假設1,這個時候再索引塊1中會顯示它的屬性資訊。 這個檔案資訊格式 lxx-x—– ,還記得吧, 第乙個字元代表什麼檔案,這裡決定了它後面如何查詢,同理,根據相應的資料塊編號1000去資料塊中繼續查詢,為什麼呢?剛說了,因為第乙個字元為l,存放的肯定是鏈結路徑,所以繼續根據路徑查詢,如果是常規檔案,就直接顯示內容了。那麼,刪除為什麼會有影響,應該明白了吧。當你把所指向的鏈結路徑刪除了,當然無法找到了。這裡指的是你把/etc/passwd刪除了, 那麼 pass1.s指向誰呢?肯定會出錯啦!
man
Linux基礎命令 二
查詢檔案 find grep 在檔案裡面按內容查詢 find 在指定的路徑裡面找檔案 find name name 查詢當前目錄下所有檔名包含name的檔案 find tmp size 2m 查詢在 tmp目錄下大小等於2m的檔案 find tmp size 2m 查詢在 tmp目錄下大於2m的檔案...
Linux基礎命令二
df 檢視磁碟空間。h 以高可讀形式展示。free 檢視記憶體使用情況。m 以mb為單位。wc 統計檔案內容資訊 行數,單詞數,位元組數 l line 行數 w world 單詞數 c bytes 位元組數 date 操作時間日期 讀取,設定 語法1 date 輸出的形式 2018年 3月 24日 ...
Linux基礎命令 二
目錄 linux基礎命令 二 檢視檔案內容less命令 統計檔案內容wc命令 檢索和過濾檔案內容grep命令 壓縮命令gzip bzip2命令 製作歸檔檔案 tar 基本語法 文字編輯器 vi 文字編輯器的作用 linux中最常用的文字編輯器 vi編輯器的工作模式三種工作模式 不同模式之間的切換 與...