Tar软件包管理

Linux操作系统除了使用RPM管理工具对软件包管理之外,还可以通过tar、zip、jar等工具进行源码包的管理。

Tar命令参数详解
-A, –catenate, –concatenate      将存档与已有的存档合并

-c, –create                 建立新的存档

-d, –diff, –compare            比较存档与当前文件的不同之处

–delete         从存档中删除

-r, –append         附加到存档结尾

-t, –list          列出存档中文件的目录

-u, –update         仅将较新的文件附加到存档中

-x, –extract, –get          解压文件

-j, –bzip2, –bunzip2            有bz2属性的软件包;

-z, –gzip, –ungzip             有gz属性的软件包;

-b, –block-size N         指定块大小为 Nx512 字节(缺省时 N=20);

-B, –read-full-blocks          读取时重组块;

-C, –directory DIR         指定新的目录;

–checkpoint         读取存档时显示目录名;

-f, –file [HOSTNAME:]F         指定存档或设备,后接文件名称;

–force-local         强制使用本地存档,即使存在克隆;

-G, –incremental         建立老 GNU 格式的备份;

-g, –listed-incremental         建立新 GNU 格式的备份;

-h, –dereference         不转储动态链接,转储动态链接指向的文件;

-i, –ignore-zeros          忽略存档中的 0 字节块(通常意味着文件结束);

–ignore-failed-read          在不可读文件中作 0 标记后再退出;

-k, –keep-old-files          保存现有文件;从存档中展开时不进行覆盖;

-K, –starting-file F          从存档文件 F 开始;

-l, –one-file-system          在本地文件系统中创建存档;

-L, –tape-length N         在写入 N*1024 个字节后暂停,等待更换磁盘;

-m, –modification-time          当从一个档案中恢复文件时,不使用新的时间标签;

-M, –multi-volume         建立多卷存档,以便在几个磁盘中存放;

-O, –to-stdout         将文件展开到标准输出;

-P, –absolute-paths          不要从文件名中去除 ‘/’;

-v, –verbose                    详细显示处理的文件;

–version                        显示tar 程序的版本号;

–exclude                  FILE不把指定文件包含在内;

-X, –exclude-from FILE         从指定文件中读入不想包含的文件的列表。

TAR企业案例演示
tar        -cvf     jfedu.tar.gz        jfedu         打包jfedu文件或者目录,打包后名称jfedu.tar.gz;

tar        -tf     jfedu.tar.gz                         查看jfedu.tar.gz包中内容;

tar        -rf     jfedu.tar.gz        jfedu.txt            将jfedu.txt文件追加到jfedu.tar.gz中

tar        -xvf     jfedu.tar.gz                     解压jfedu.tar.gz程序包;

tar        -czvf     jfedu.tar.gz        jfedu         使用gzip格式打包并压缩jfedu目录;

tar        -cjvf     jfedu.tar.bz2        jfedu         使用bzip2格式打包并压缩jfedu目录;

tar     -czf jfedu.tar.gz * -X list.txt      使用gzip格式打包并压当前目录所有文件,排除list.txt中记录的文件;

tar     -czf jfedu.tar.gz     * –exclude=zabbix-3.2.4.tar.gz –exclude=nginx-1.12.0.tar.gz 使用gzip格式打包并压当前目录所有文件及目录,排除zabbix-3.2.4.tar.gz和nginx-1.12.0.tar.gz软件包。