linux基础-第八单元 正文处理命令及tar命令

第八单元 正文处理命令及tar命令 

使用cat命令进行文件的纵向合并
两种文件的纵向合并方法
归档文件和归档技术
归档的目的
什么是归档
tar命令的功能
tar命令的常用选项
使用tar命令创建、查看及抽取归档文件
使用tar命令创建归档文件
使用tar命令查看归档文件
使用tar命令抽取归档文件
文件的压缩和解压缩
什么是压缩
压缩的目的
什么是解压缩
gzip命令和gunzip命令
bzip2命令和bunzip2命令
在使用tar命令的同时进行压缩和解压缩
在使用tar命令的同时进行压缩和解压缩的用法举例
课后作业
【本节内容】
1. 使用cat命令进行文件的纵向合并
1) 掌握使用cat命令实现文件的纵向合并:
a) 例如:使用cat命令将baby.age、baby.kg和baby.sex这三个文件纵向合并为baby文件的方法:
cat baby.age baby.kg baby.sex >baby
b) 例如:使用cat命令将baby.age文件的内容添加到baby2文件中的方法:
cat baby.age >>baby2
2. 归档文件和归档技术(详见linux系统管理P209)
1) 掌握归档的定义:归档(archiving)就是将许多文件(或目录)打包成一个文件。
2) 了解归档的目的:归档的目的就是方便备份、还原及文件的传输操作。
3) 掌握tar命令的功能:将多个文件(也可能包括目录,因为目录本身也是文件)放在一起存放到一个磁带或磁盘归档文件中。并且将来可以根据需要只还原归档文件中的某些指定的文件。
4) 掌握tar命令的常用选项:
c:创建一个新的tar文件。
t:列出tar文件中目录的内容。
x:从tar文件中抽取文件。
f:指定归档文件或磁带(也可能是软盘)设备(一般都要选)。
v:显示所打包的文件的详细信息,v是verbose的第1个字母。
z:使用gzip压缩算法来压缩打包后的文件。
j:使用bzip2压缩算法来压缩打包后的文件。
3. 使用tar命令创建、查看及抽取归档文件(详见linux系统管理P210)
1) 掌握使用tar命令创建归档文件的用法举例:
例如:使用tar命令将arch目录打包成一个名为arch.tar的归档文件的方法(要求显示所有打包的文件和目录):
tar cvf arch.tar arch 
掌握使用tar命令查看归档文件的用法举例:
例如:使用tar命令显示arch.tar这个归档文件(包)中的所有文件的方法:
tar tf arch.tar
2) 掌握使用tar命令抽取归档文件的用法举例:
例如:使用tar命令恢复arch.tar中的全部内容的方法:
tar xvf arch.tar -C 路径

4. 文件的压缩和解压缩(详见linux系统管理P212)
1) 掌握压缩的定义:压缩就是将一个大的文件通过一些压缩算法变成一个小文件。 
2) 了解压缩的目的:主要是缩小文件的大小,这样会节省存储文件的磁盘或磁带的空间,另外在网络上传输这些小文件也会减少网络的浏览(也就是节省网络的带宽)。
3) 掌握解压缩的定义:解压缩就是将一个通过一些压缩算法的文件恢复到压缩之前的样子。
4) 掌握gzip命令和gunzip命令的用法举例:
a) 例如:将文件file1压缩成.gz格式的压缩包应该使用的命令为:gzip file1 –c > /路径/name.gz
b) 例如:将压缩文件file1.gz解压缩的命令为:
gunzip file1.gz >
5) 掌握bzip2命令和bunzip2命令的用法举例:
a) 例如:将文件file1压缩成.bz2格式的压缩包应该使用的命令为:bzip2 file1 >
b) 例如:将压缩文件file1.bz2解压缩的命令为:
bunzip2 file1.bz2 >
5. 在使用tar命令的同时进行压缩和解压缩(详见linux系统管理P214)
1) 掌握在使用tar命令的同时进行压缩和解压缩的用法举例
a) 例如:使用tar命令将arch目录打包而且同时使用gzip的技术压缩打包后文件的方法(打包后的文件名为arch.tar.gz):
tar cvfz arch.tar.gz arch
b) 例如:使用tar命令将arch目录打包而且同时使用bzip2的技术压缩打包后文件的方法(打包后的文件名为arch.tar.bz2):tar cvfj arch.tar.bz2 arch


上课内容如下:

1、进入tmp目录

[root@study ~]# cd /tmp
[root@study tmp]# ll
总用量 12
-rwxr--r-- 1 root root 0 11月 10 14:29 a.txt
-rw-rw-r-- 1 nulige nulige 0 11月 10 14:32 lhf.txt
drwx------ 2 root root 4096 11月 11 00:09 ssh-AiTxJ30841
drwxr-xr-x 2 root root 4096 11月 10 14:24 test
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

2、追加内容到后面文件中

[root@study tmp]# cat /etc/passwd >new_pass.txt

 

3、echo的用法

[root@study tmp]# echo 'hello'
hello

 

#追加内容到new_pass.txt 
[root@study tmp]# echo '123' >>new_pass.txt
[root@study tmp]# echo '123' >>new_pass.txt
[root@study tmp]# echo '123' >>new_pass.txt

 

#查看文件内容
[root@study tmp]# cat new_pass.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
nulige:x:500:500::/home/nulige:/bin/bash
oldboy:x:501:501::/home/oldboy:/bin/bash
lenovo:x:502:502::/home/lenovo:/bin/bash
huzhihua:x:503:503::/home/huzhihua:/bin/bash
dog:x:504:505::/home/dog:/bin/bash
tom:x:505:506::/home/tom:/bin/bash
jack:x:506:507::/home/jack:/bin/bash
123
123
123

 

[root@study tmp]# ls -l

总用量 16
-rwxr--r-- 1 root root 0 11月 10 14:29 a.txt
-rw-rw-r-- 1 nulige nulige 0 11月 10 14:32 lhf.txt
-rw-r--r-- 1 root root 1343 11月 11 00:10 new_pass.txt
drwx------ 2 root root 4096 11月 11 00:09 ssh-AiTxJ30841
drwxr-xr-x 2 root root 4096 11月 10 14:24 test
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

#追加文件内容
[root@study tmp]# pwd >>new_pass.txt

 

#同时查看两个文件
[root@study tmp]# cat /etc/pssswd /etc/shadow

root:$6$HJdW8nJO$ILP4OTkWE/Q6sGFRCI4CFQnpMhsNAWGy0/qjnYH99vYjJjSihqqDKLmnzcsCFZwTD5jyZ7pobu45.n3lNx3pL/:17115:0:99999:7:::
bin:*:15980:0:99999:7:::
daemon:*:15980:0:99999:7:::
adm:*:15980:0:99999:7:::
lp:*:15980:0:99999:7:::
sync:*:15980:0:99999:7:::
shutdown:*:15980:0:99999:7:::
halt:*:15980:0:99999:7:::
mail:*:15980:0:99999:7:::
uucp:*:15980:0:99999:7:::
operator:*:15980:0:99999:7:::
games:*:15980:0:99999:7:::
gopher:*:15980:0:99999:7:::
ftp:*:15980:0:99999:7:::
nobody:*:15980:0:99999:7:::
dbus:!!:17052::::::
vcsa:!!:17052::::::
abrt:!!:17052::::::
haldaemon:!!:17052::::::
ntp:!!:17052::::::
saslauth:!!:17052::::::
postfix:!!:17052::::::
sshd:!!:17052::::::
tcpdump:!!:17052::::::
nulige:$6$wJkE7xxt$BGuPSKMNYn2VvzKWouSXdzl83.lmdxElzEl313yM/UOJzg1OwfS/p0HdfnPtYWQuhiNEsIcF6NAlvV29tFEj4.:17115:0:99999:7:::
oldboy:!!:17115:0:99999:7:::
lenovo:!!:17115:0:99999:7:::
huzhihua:!!:17115:0:99999:7:::
dog:$6$0lCSTHOl$5vja/Cwlu5gqg2UqiPCrSp8Z91z89Ibxoh.RYgAt/IgR3mOkr5bI6lAY0VN2FL0gmQd/zofSsiPAYvyxhcJFi/:17115:0:99999:7:::
tom:!!$6$yTetJMDX$olAJ3Rw4t.YeZqG4y.iRv8v3HmKCVoQDFUYGybI4G68pohU57VMosX5pTvKQJuAzURfaSiB2uMbXVvPeSLa.Y1:17115:0:99999:7:::
jack:!$6$xAsdUwbC$R8qa4dU2eO1G4HoewMQZzCVvSHyLNx2RCCdASj78RzNpR/9WUMsrS2WhgNnVAhlzv2c64UDLPbgZfl/YXLZ2v/:17115:0:99999:7:::

 

#追加123到a.txt

[root@study tmp]# echo 123 >>a.txt

#查看创建的内容

[root@study tmp]# cat a.txt
123

 

#两个文件的内容一起查看

[root@study tmp]# cat new_pass.txt a.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
nulige:x:500:500::/home/nulige:/bin/bash
oldboy:x:501:501::/home/oldboy:/bin/bash
lenovo:x:502:502::/home/lenovo:/bin/bash
huzhihua:x:503:503::/home/huzhihua:/bin/bash
dog:x:504:505::/home/dog:/bin/bash
tom:x:505:506::/home/tom:/bin/bash
jack:x:506:507::/home/jack:/bin/bash
123
123
123
/tmp
123

 

#两个文件的内容覆盖追加到b.txt
[root@study tmp]# cat new_pass.txt a.txt >b.txt
[root@study tmp]# cat b.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
nulige:x:500:500::/home/nulige:/bin/bash
oldboy:x:501:501::/home/oldboy:/bin/bash
lenovo:x:502:502::/home/lenovo:/bin/bash
huzhihua:x:503:503::/home/huzhihua:/bin/bash
dog:x:504:505::/home/dog:/bin/bash
tom:x:505:506::/home/tom:/bin/bash
jack:x:506:507::/home/jack:/bin/bash
123
123
123
/tmp
123

 

#统计有多少个文件
[root@study tmp]# wc -l /etc/passwd
31 /etc/passwd


[root@study tmp]# cat /etc/passwd | wc -l
31


[root@study tmp]# ls
a.txt lhf.txt ssh-AiTxJ30841 test01.txt tom.txt
b.txt new_pass.txt test test02.txt

 

#加管道符
[root@study tmp]# cat /etc/passwd /etc/shadow |wc -l
62
[root@study tmp]# cat /etc/passwd |wc -l
31
[root@study tmp]# cat /etc/shadow |wc -l
31

 

[root@study tmp]# ls
a.txt lhf.txt ssh-AiTxJ30841 test01.txt tom.txt
b.txt new_pass.txt test test02.txt


[root@study tmp]# ls
a.txt lhf.txt ssh-AiTxJ30841 test01.txt tom.txt
b.txt new_pass.txt test test02.txt

 

#tar cvf test.tart 压缩文件
[root@study tmp]# tar -cvf test.tar a.txt b.txt test01.txt tom.txt
a.txt
b.txt
test01.txt
tom.txt

 

#查看解压文件内容

[root@study tmp]# tar -tf test.tar
a.txt
b.txt
test01.txt
tom.txt

 

#解压文件
[root@study tmp]# tar xvf /tmp/test.tar
a.txt
b.txt

test01.txt

 

#把文件解压到指定目录

[root@study tmp]# tar xvf /tmp/test.tar -C /root/
a.txt
b.txt
test01.txt
tom.txt


 压缩

压缩的两种格式: gzip压缩和bunzip2压缩

 

ps:

压缩

[root@study tmp]# gzip test.txt


[root@study tmp]# ls
a.txt lhf.txt ssh-AiTxJ30841 test01.txt test.tar tom.txt

b.txt new_pass.txt test test02.txt test.txt.gz

 

#解压文件
[root@study tmp]# gunzip test.txt.gz
[root@study tmp]# ll
总用量 56
-rwxr--r-- 1 root root 10240 11月 11 00:25 a.txt
-rw-r--r-- 1 root root 1352 11月 11 00:12 b.txt
-rw-rw-r-- 1 nulige nulige 0 11月 10 14:32 lhf.txt
-rw-r--r-- 1 root root 1348 11月 11 00:10 new_pass.txt
drwx------ 2 root root 4096 11月 11 00:09 ssh-AiTxJ30841
drwxr-xr-x 2 root root 4096 11月 10 14:24 test
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
-rw-r--r-- 1 root root 20480 11月 11 00:25 test.tar
-rw-r--r-- 1 root root 1331 11月 14 10:47 test.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

压缩

[root@study tmp]# bzip2 test.txt
[root@study tmp]# ll
总用量 56
-rwxr--r-- 1 root root 10240 11月 11 00:25 a.txt
-rw-r--r-- 1 root root 1352 11月 11 00:12 b.txt
-rw-rw-r-- 1 nulige nulige 0 11月 10 14:32 lhf.txt
-rw-r--r-- 1 root root 1348 11月 11 00:10 new_pass.txt
drwx------ 2 root root 4096 11月 11 00:09 ssh-AiTxJ30841
drwxr-xr-x 2 root root 4096 11月 10 14:24 test
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
-rw-r--r-- 1 root root 20480 11月 11 00:25 test.tar
-rw-r--r-- 1 root root 579 11月 14 10:47 test.txt.bz2
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

解压
[root@study tmp]# bunzip2 test.txt.bz2
[root@study tmp]# ll test.txt
-rw-r--r-- 1 root root 1331 11月 14 10:47 test.txt
[root@study tmp]# ls
a.txt lhf.txt ssh-AiTxJ30841 test01.txt test.tar tom.txt
b.txt new_pass.txt test test02.txt test.txt

 

打包
[root@study tmp]# tar -tf test.tar
a.txt
b.txt
test01.txt
tom.txt

[root@study tmp]# ll test.tar
-rw-r--r-- 1 root root 20480 11月 11 00:25 test.tar


[root@study tmp]# zip test.t
test.tar test.txt

 

root@study tmp]# tar cvf test.tar a.txt b.txt
a.txt
b.txt
[root@study tmp]#
[root@study tmp]# ll
总用量 60
-rwxr--r-- 1 root root 10240 11月 11 00:25 a.txt
-rw-r--r-- 1 root root 1352 11月 11 00:12 b.txt
-rw-rw-r-- 1 nulige nulige 0 11月 10 14:32 lhf.txt
-rw-r--r-- 1 root root 1348 11月 11 00:10 new_pass.txt
drwx------ 2 root root 4096 11月 11 00:09 ssh-AiTxJ30841
drwxr-xr-x 2 root root 4096 11月 10 14:24 test
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
-rw-r--r-- 1 root root 20480 11月 14 10:51 test.tar
-rw-r--r-- 1 root root 828 11月 11 00:25 test.tar.gz
-rw-r--r-- 1 root root 1331 11月 14 10:47 test.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

打包

[root@study tmp]# tar czvf test1.tar.gz a.txt b.txt
a.txt
b.txt

[root@study tmp]# ll

-rwxr--r-- 1 root root 10240 11月 11 00:25 a.txt
-rw-r--r-- 1 root root 1352 11月 11 00:12 b.txt
-rw-rw-r-- 1 nulige nulige 0 11月 10 14:32 lhf.txt
-rw-r--r-- 1 root root 1348 11月 11 00:10 new_pass.txt
drwx------ 2 root root 4096 11月 11 00:09 ssh-AiTxJ30841
drwxr-xr-x 2 root root 4096 11月 10 14:24 test
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
-rw-r--r-- 1 root root 3198 11月 14 10:54 test1.tar.gz
-rw-r--r-- 1 root root 20480 11月 14 10:51 test.tar
-rw-r--r-- 1 root root 828 11月 11 00:25 test.tar.gz
-rw-r--r-- 1 root root 1331 11月 14 10:47 test.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

#不解压进接查看文件内容

[root@study tmp]# tar -tf test1.tar.gz
a.txt
tmp/
tmp/tom.txt
tmp/a.txt
tmp/test.txt
tmp/test/
tmp/b.txt
tmp/new_pass.txt
tmp/.ICE-unix/
tmp/test1.tar.gz
tmp/test.tar.gz
tmp/ssh-AiTxJ30841/
tmp/test.tar
tmp/test02.txt
tmp/lhf.txt
tmp/test01.txt

 

[root@study tmp]# mkdir test1

[root@study tmp]# cd test1
[root@study test1]# ll
总用量 0
[root@study test1]# touch {a..z}.txt
[root@study test1]# ll
总用量 0
-rw-r--r-- 1 root root 0 11月 14 10:57 a.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 b.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 c.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 d.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 e.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 f.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 g.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 h.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 i.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 j.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 k.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 l.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 m.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 n.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 o.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 p.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 q.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 r.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 s.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 t.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 u.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 v.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 w.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 x.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 y.txt
-rw-r--r-- 1 root root 0 11月 14 10:57 z.txt

 

[root@study tmp]# mkdir abc
[root@study tmp]# cd abc
[root@study abc]# ll
总用量 0
[root@study abc]# touch {1..10}.txt
[root@study abc]# ll
总用量 0
-rw-r--r-- 1 root root 0 11月 14 11:01 10.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 1.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 2.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 3.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 4.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 5.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 6.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 7.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 8.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 9.txt
[root@study abc]# cd ..
[root@study tmp]# cd abc/
[root@study abc]# ll *
-rw-r--r-- 1 root root 0 11月 14 11:01 10.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 1.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 2.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 3.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 4.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 5.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 6.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 7.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 8.txt
-rw-r--r-- 1 root root 0 11月 14 11:01 9.txt

 

[root@study tmp]# tar czf abc.tar.gz abc/*
[root@study tmp]# ll
总用量 68
drwxr-xr-x 2 root root 4096 11月 14 11:01 abc
-rw-r--r-- 1 root root 190 11月 14 11:03 abc.tar.gz
-rwxr--r-- 1 root root 10240 11月 11 00:25 a.txt
-rw-r--r-- 1 root root 1352 11月 11 00:12 b.txt
-rw-r--r-- 1 root root 1348 11月 11 00:10 new_pass.txt
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
drwxr-xr-x 2 root root 4096 11月 14 10:57 test1
-rw-r--r-- 1 root root 45 11月 14 10:58 test1.tar.gz
-rw-r--r-- 1 root root 20480 11月 14 10:51 test.tar
-rw-r--r-- 1 root root 828 11月 11 00:25 test.tar.gz
-rw-r--r-- 1 root root 1331 11月 14 10:47 test.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt

 

[root@study tmp]# mkdir test3
[root@study tmp]# ll
总用量 72
drwxr-xr-x 2 root root 4096 11月 14 11:01 abc
-rw-r--r-- 1 root root 190 11月 14 11:03 abc.tar.gz
-rwxr--r-- 1 root root 10240 11月 11 00:25 a.txt
-rw-r--r-- 1 root root 1352 11月 11 00:12 b.txt
-rw-r--r-- 1 root root 1348 11月 11 00:10 new_pass.txt
-rw-r--r-- 1 root root 0 11月 10 09:44 test01.txt
-rw-r--r-- 1 root root 0 11月 10 09:46 test02.txt
drwxr-xr-x 2 root root 4096 11月 14 10:57 test1
-rw-r--r-- 1 root root 45 11月 14 10:58 test1.tar.gz
drwxr-xr-x 2 root root 4096 11月 14 11:04 test3
-rw-r--r-- 1 root root 20480 11月 14 10:51 test.tar
-rw-r--r-- 1 root root 828 11月 11 00:25 test.tar.gz
-rw-r--r-- 1 root root 1331 11月 14 10:47 test.txt
-rw----r-- 1 tom tom 50 11月 10 15:57 tom.txt


[root@study tmp]# cd test3

[root@study test3]# touch {a..z}.txt
[root@study test3]# ll
总用量 0
-rw-r--r-- 1 root root 0 11月 14 11:04 a.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 b.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 c.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 d.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 e.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 f.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 g.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 h.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 i.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 j.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 k.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 l.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 m.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 n.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 o.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 p.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 q.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 r.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 s.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 t.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 u.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 v.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 w.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 x.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 y.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 z.txt

 

[root@study test3]# tar czf /tmp/tt.tar.gz *
[root@study test3]# ll
总用量 0
-rw-r--r-- 1 root root 0 11月 14 11:04 a.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 b.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 c.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 d.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 e.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 f.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 g.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 h.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 i.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 j.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 k.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 l.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 m.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 n.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 o.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 p.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 q.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 r.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 s.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 t.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 u.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 v.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 w.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 x.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 y.txt
-rw-r--r-- 1 root root 0 11月 14 11:04 z.txt

 

指定解压目录

[root@study tmp]# mkdir test5

[root@study tmp]# tar xf tt.tar.gz -C test5
[root@study tmp]# ls test5
a.txt c.txt e.txt g.txt i.txt k.txt m.txt o.txt q.txt s.txt u.txt w.txt y.txt
b.txt d.txt f.txt h.txt j.txt l.txt n.txt p.txt r.txt t.txt v.txt x.txt z.tx

 

打包oldboy目录,并排除 oldboy/test02.txt

[root@kuaiwei ~]# tar zcvf a.tar.gz --exclude=oldboy/test02.txt ./oldboy/
./oldboy/
./oldboy/xiaofan/
./oldboy/test02.txt 


 6. 课后作业(用时65分钟)

1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖)

 cat /etc/passwd /etc/group >/1.txt


2) 将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件/2.txt(追加)

 cat /etc/passwd /etc/shadow >/2.txt


3) 将/1.txt、/2.txt两个文件打包为/1.tar 

cd /

tar cvf 1.tar 1.txt 2.txt


4) 使用gzip命令压缩1.txt文件名为1.txt.gz

 gzip 1.txt.gz 1.txt


5) 解压缩1.txt.gz

 tar -xf 1.txt.gz


6) 使用bzip2压缩1.txt压缩后文件名为1.txt.bz2

 bzip2 1.txt 1.txt.bz2


7) 解压缩1.txt.bz2

 bunzip2 1.txt.bz2


8) 解包1.tar,解包后文件存放到/tmp目录下

 tar xf 1.tar -C /tmp


9) 使用tar命令打包并且压缩/1.txt、/2.txt,得到的文件名为1.tar.gz

 tar cvf 1.tar.gz 1.txt 2.txt


10) 解包1.tar.gz,解包后文件存放到/tmp目录下

 tar xf 1.tar.gz -C /tmp

你可能感兴趣的:(linux基础-第八单元 正文处理命令及tar命令)