內容簡介

1、第四部分第一課:壓縮文件,解壓無壓力

2、第四部分第二課:SSH連接,安全快捷

壓縮文件,解壓無壓力

最近小編因為換工作,從南法搬到巴黎。折騰了很久。

網絡一直用的是公共的無線網,信號不行。無線上網的box盒子已經說通網了,但我覺得牆上的線有問題。反正就是用不了自己的告訴WiFI盒子。

而且還要繼續找房子,剛上班第一周,諸多事情,所以最近停更了很久。不好意思。

不過,現在又重新開始啦。木啊哈哈哈~

百足之蟲,死而不僵。。。

第四部分我們會講Linux網絡方面的一些知識點。既然講到網絡方面,首先我們可以介紹一下如何壓縮和解壓文件,因為我們在網絡上傳輸文件的時候,通常都會先將其壓縮。

說到壓縮文件,如果是Windows用戶,那應該對rar和zip兩種格式不陌生。一般在Windows下,我們會使用Winrar,7zip等壓縮解壓的軟件。這些軟件中有些是收費的,比如winrar。

在Linux下,我們有很多免費的壓縮解壓軟件可供選擇,比如gzip和bzip2。不過,gzip和bzip2,不能同時壓縮多個文件,一次只能壓縮一個文件。

不過,Linux這樣的開源社群可厲害了,他們還有一個軟件tar,算是Linux下用得挺多的程序了吧。tar可以同時壓縮多個文件。

當然了,Linux下也有解壓zip和rar格式的軟件。

這一課沒什么技術難點,不過有些概念還是比較重要的。

就當茶余飯后,休閑泡腳吧... 當然,之后千萬不要用洗腳水泡茶...

tar命令:將多個文件歸檔

首先,我們需要弄清楚兩個概念:打包和壓縮。

打包,是將多個文件變成一個總的文件,這個總的文件我們通常稱為archive,英語是《存檔,歸檔》的意思。

壓縮,是將一個大文件通過某些壓縮算法變成一個小文件。

所以,其實引言中所提到的tar命令,gzip和bzip2命令是這樣使用的:

用tar將多個文件歸檔為一個總的文件,稱為archive。

用gzip或bzip2命令將archive壓縮為更小的文件。

可以用下圖來描述此過程:

所以,我們會首先介紹tar命令,然后再學習gzip和bzip2命令。當然了,我們也會學習如何在Linux下解壓zip和rar格式的文件。

zip和rar格式是可以同時歸檔和壓縮的。

將多個文件合並為一個文件

我們來實際操作一下。

假設我現在創建了一個目錄,叫做compression,是英語“壓縮”的意思,然后在此文件夾中再創建一個目錄,叫做tutorial,是英語“教程”的意思。在tutorial目錄中,我放入三個C語言的源文件。如下圖所示:

我們就可以用tar命令對這三個文件進行歸檔。

-cvf:創建一個tar歸檔

我們可以這樣來創建一個tar歸檔:

tar -cvf tutorial.tar tutorial/

tar命令的三個選項參數分別表示:

c:c是create的縮寫,表示“創建”。

v:v是verbose的縮寫,表示“冗余”。會顯示操作的詳細。

f:f是file的縮寫,表示“文件”。指定歸檔文件。

執行以上的命令之后,可以從tutorial這個文件夾(里面包含ws.c,test.c,hanio.c三個文件)創建tutorial.tar這個歸檔。

因為加了v選項,所以列出了被歸檔的三個文件。

難道我們一定要先把三個文件都放到tutorial這樣的一個目錄,才能用tar歸檔嗎?

不是的,我們也可以直接對文件進行歸檔操作,不需要先把所有文件放到一個目錄里,如下:

tar -cvf archive.tar file1.txt file2.txt file3.txt

就會把file.txt,file2.txt,file3.txt歸檔為archive.tar。

-tf:顯示歸檔里的內容,並不解開歸檔

我們可以用tf選項參數來看一下我們剛生成的歸檔tutorial.tar中的內容。

tar -tf tutorial.tar

可以看到,tutorial.tar這個文件里,首先包含的是tutorial這個目錄,目錄里有三個文件:ws.c,test.c,hanio.c

一般,建立歸檔之前,最好把所有文件都先放置到一個目錄里。因為假如你拿到的歸檔文件是不包含目錄的(如上面 tar -cvf archive.tar file1.txt file2.txt file3.txt這樣),並且里面有好幾百個文件,你將其解開到你的家目錄,那會亂成一團的。

-rvf:追加文件到歸檔

例如:

tar -rvf archive.tar file_extra.txt

表示將file_extra.txt這個文件添加到archive.tar歸檔中。

-xvf:解開歸檔

算是-cvf的相反操作。將生成的歸檔解開。x是extract的縮寫,表示《提取,取出》。

tar -xvf tutorial.tar

gzip和bzip2命令:壓縮歸檔

現在我們已經學會用tar命令來創建一個歸檔了,接下來,我們就學習如何壓縮這個歸檔吧。

Linux中常用的壓縮命令是gzip和bzip2。功能類似。

gzip:比較常用。

bzip2:不是那么常用。bzip2的壓縮率比gzip更大,但是更耗時。

這兩個命令的用法也很簡單,只需傳入要壓縮的歸檔作為參數。經過壓縮,歸檔的后綴名也會改變。

.tar.gz:這是用gzip命令壓縮后的文件后綴名。

.tar.bz2:這是用bzip2命令壓縮后的文件后綴名。

兩個壓縮命令的用法如下:

gzip tutorial.tar

bzip2 tutorial.tar

就會分別生成tutorial.tar.gz和tutorial.tar.bz2兩個壓縮文件。

如果要對這兩個命令生成的壓縮文件分別進行解壓,可以使用gunzip和bunzip2兩個命令:

gunzip tutorial.tar.gz

bunzip2 tutorial.tar.bz2

用tar命令同時歸檔和壓縮

之前我們只介紹了tar命令的歸檔作用,其實我們可以用tar命令同時完成歸檔和壓縮的操作,一氣呵成。

當然了,也就是給tar命令多加一個選項參數,使之完成歸檔操作后,還是調用gzip或bzip2命令來完成壓縮操作。

-zcvf:歸檔,然后用gzip來壓縮歸檔

tar -zcvf tutorial.tar.gz tutorial/

一步到位,從tutorial目錄,歸檔、壓縮,生成tutorial.tar.gz文件。

要解壓,也可以一步到位:

tar -zxvf tutorial.tar.gz

相信常用Linux系統的用戶對這個命令應該很熟悉吧。

-jcvf:歸檔,然后用bzip2來壓縮歸檔

tar -jcvf tutorial.tar.bz2 tutorial/

一步到位,從tutorial目錄,歸檔、壓縮,生成tutorial.tar.bz2文件。

要解壓,也可以一步到位:

tar -jxvf tutorial.tar.bz2

zcat,zmore,zless:直接顯示用gzip壓縮的文件的內容

cat,more和less三個命令我們已經很熟悉了,是用於顯示文件內容。

如果是壓縮文件,比如我們上面生成的tutorial.tar.gz,如果直接用cat,more或less命令來顯示,是會顯示亂碼的。

cat tutorial.tar.gz

但是用zcat,zmore,zless命令就可以顯示用gzip命令壓縮的文件的內容了:

zcat tutorial.tar.gz

unzip和unrar命令:解壓zip和rar文件

盡管.tar.gz和.tar.bz2結尾的壓縮文件在Linux世界很常見,但是如果某個Windows用戶給您發送壓縮文件,大部分情況可能是.zip或.rar結尾的壓縮文件,那么在Linux下如何解壓這類來自Windows世界的外來物呢?

不必擔心,我們可以用unzip和unrar命令來分別解壓.zip和.rar格式的壓縮文件。

unzip:解壓.zip格式的壓縮文件

一般Linux發行版中默認沒有安裝這個程序,我們可以用以下命令來安裝:

sudo apt-get install unzip

安裝完之后,要解壓.zip格式的壓縮文件,可以這樣:

unzip archive.zip

很簡單吧。

如果不想解開.zip文件,只想看其中的內容的話,可以加上-l參數:

unzip -l archive.zip

在Linux中,雖然不常見,但是有時候我們也需要創建.zip格式的文件,我們可以安裝zip這個程序:

sudo apt-get install zip

想要生成.zip格式的壓縮文件,可以這樣:

zip -r archive.zip archive/

注意這里有一個-r參數,須要加上,如果不加,則只會壓縮空文件夾而已。加上-r參數,則會遞歸壓縮目錄和子目錄中的所有文件。

unrar:解壓.rar格式的壓縮文件

類似於unzip,安裝unrar的命令如下:

sudo apt-get install unrar

安裝完之后,要解壓.rar格式的壓縮文件,可以這樣:

unrar e archive.rar

可以看到,有些意外,因為e這個選項參數前面沒有-,人生總是有意外的不是嗎?unrar這個命令的作者顯然是不走尋常路。

如果不想解開.rar文件,只想看其中的內容的話,可以加上l參數(是的,也不加-):

unrar l archive.rar

那如果我想在Linux中創建.rar格式的壓縮文件呢?

不好意思,.rar格式的壓縮軟件並沒有公開,解壓的軟件是免費的。如果你要壓縮rar文件,那只能去買收費軟件。

Linux下也有rar這個軟件,你也可以下載安裝,但這是一個試用軟件,到了一定天數后,就會收費。不過,zip軟件是免費的。

第四部分第二課預告

今天的課就到這里,一起加油吧!

下一課我們學習:SSH連接,安全快捷

linux探索之旅pdf,【Linux探索之旅】第四部分第一課:壓縮文件,解壓無壓力相关推荐

  1. linux命令大全 美pdf,Linux编程命令详解_10331298_(美)Richard..pdf-得力文库

    Linux编程命令详解_10331298_(美)Richard....pdf General Ination 书名Linux编程命令详解 作者(美)Richard Petersen著:梁普选,刘玉芬等 ...

  2. linux 设计与实现 pdf,Linux库的设计与实现.pdf

    Linux库的设计与实现 一.为什么要使用库文件 我们在实际编程工作中肯定会遇到这种情况:有几个项目里有一些函数模块的 功能相同, 实现代码也相同,也是我们所说的重复代码.比如,很多项目里都有一个用户 ...

  3. linux下安装master pdf,Linux.完全安装.pdf

    Linux.完全安装 作者:失落的天使(Lost-Angel) 電子郵件信箱:k70701@ 失落的天使 lost_angel@.tw 公元貳千零壹年捌月貳拾日 版權聲明:本文版權屬於作者所有,歡迎廣 ...

  4. linux 下生成中文pdf,Linux itex pdf生成中文不显示

    要查看系统中已经安装的字体,我们可以使用fc-list命令进行查看.如果系统中没有该命令的话,我们需要先安装相关的软件包. 在centos上,使用如下命令进行安装: yum install -y fo ...

  5. linux 内核 报错,根据epc定位linux内核报错.pdf

    根据epc定位linux内核报错.pdf 韩⼤卫@吉林师范⼤学 2014.12.10 转载请表明出处 ************************************************* ...

  6. linux进程管理 pdf,高效与精细的结合--Linux的进程管理.pdf

    高效与精细的结合--Linux的进程管理.pdf 第 卷 第 期 A 文献标识码 I T6L 76 28 L J6 7 8 676 LJ Q Q656 8J6 6 82 K 797863 R28J 2 ...

  7. linux网卡驱动 pdf,Linux下网卡驱动程序.pdf

    zekairecv 于 2015-10-04 00:58:57发表: 谢谢 weilee1 于 2015-04-19 17:41:05发表: 看看 雪语阑风 于 2014-12-04 11:03:39 ...

  8. linux强制移除pdf密码,分享|如何在 Linux 中从一个 PDF 文件中移除密码

    今天,我碰巧分享一个受密码保护的 PDF 文件给我的一个朋友.我知道这个 PDF 文件的密码,但是我不想透露密码.作为代替,我只想移除密码并发送文件给他.我开始在因特网上查找一些简单的方法来从 PDF ...

  9. 【推荐实践】模型化召回在陌陌社交推荐的探索和应用.pdf(附下载链接)

    今天给大家带来MOMO吴保鑫所做的分享<模型化召回在陌陌社交推荐的探索和应用.pdf>,本次分享共包含如下四大部分: 1.陌陌社交场景概述: 2.模型化召回技术简介: 3.模型化召回在陌陌 ...

最新文章

  1. LiveData + ViewModel + Room (Google 官文)+Demo
  2. XML Schema学习
  3. thymeleaf报错:Could not load content for xxx /css/bootstrap.min.css.map:HTTP error: status
  4. 【资源】分享1套最适合Py开发的机器学习/大数据视频课程
  5. jquery获得指定元素坐标的方法
  6. 决策树缺失值python_【机器学习笔记之二】决策树的python实现
  7. 必知必会!常用矩阵求导和重要的矩阵
  8. C++标准转换运算符:reinterpret_cast
  9. 【java学习之路】(java SE篇)003.java SE基础语法之数组
  10. hdu 6118 最小费用可行流(注意与最大流的区别)
  11. 深入学习c++--智能指针(二) weak_ptr(打破shared_ptr循环引用)
  12. c#语言打印九九乘法表,C#打印九九乘法表
  13. PostgresSQL 使用实践
  14. Macbook安装pkg
  15. 《思考力---引爆无限潜能》书摘(二)
  16. 权限系统就该这么设计(万能通用),稳的一批!
  17. RIFE: Real-Time Intermediate Flow Estimation for Video Frame Interpolation——精读笔记
  18. 推荐一些增长见闻的优质公众号
  19. 2014智联卓聘积分获取新攻略
  20. LeetCode 开心字符串

热门文章

  1. Android动画(翻牌抽奖)
  2. qq邮箱 android,QQ邮箱(com.tencent.androidqqmail) - 6.2.1 - 应用 - 酷安
  3. 柯西飞行,瑞利飞行,莱维飞行,重尾分布、随机游走
  4. word柱状图垂直轴数值设定_Excel图表中设置坐标轴的字体、图案格式、刻度格式和数字格式的方法...
  5. 为什么用线程池?解释下线程池参数?线程池处理流程?阻塞队列的作用?为什么是先添加列队而不是先创建最大线程?线程池中线程复用原理?
  6. 局域网内通过ip获取主机名
  7. 外包公司究竟有没有前途?讲讲我在外包公司的真实经历
  8. 如果圆桌骑士有特殊情况(Knights of the Round Table)
  9. 作物产量常用的单位换算公式
  10. 将IP地址转换为整数--将32位的二进制转换为十进制