描述:
实现tar的各种功能。
语法:
gzip(tarfile:encoding; path, files)
备注:
外部库函数,外部库的使用请参考《外部库使用指南》。
该函数可实现tar的各种功能,操作tar.gz格式的压缩文件。
选项:
@u |
解压。 |
@a |
追加,对已经存在的压缩文件中增加新的文件。 |
@d |
删除,删除压缩文件内的指定文件。 |
@n |
只处理本级目录的文件,不递归子目录。 |
@f |
列出压缩包内的文件名。 |
@p |
列出压缩包内的目录名。 |
参数:
tarfile |
压缩文件或文件对象。 |
encoding |
字符编码,缺省为utf-8。 |
path |
要压缩的文件所在根目录,省略或为null时表示为tarfile所在的目录。 压缩时,存在files参数且path省略,参数后的符号“,”不可省略; 解压时,path表示解压输出文件的路径,若为空则解压输出到zipfile所在的路径;若是相对路径,则path追加到tarfile路径;写为绝对路径时输出到指定的位置; 删除时,path指压缩文件中从根路径开始的文件夹。 |
files |
文件或文件序列。文件名中可使用通配符*和?,*表示任何字符串,?表示单个字符; 使用通配符时,若要压缩的文件目录与要生成的文件目录不一致,则会将文件所在的目录一块压缩,即带绝对路径目录压缩,这种情况下使用@p选项列出的目录名为空。 |
返回值:
Boolean值或序列
示例:
|
A |
|
1 |
=gzip("F:/tmp/test/g1.tar.gz":"GBK";"F:/tmp","F:/tmp/*.txt") |
将F:/tmp目录下的所有txt文件压缩至F:/tmp/test/g1.tar.gz中,字符编码为GBK。 |
2 |
=gzip("F:/tmp/test/g2.tar.gz":"GBK";,"F:/tmp/f1") |
将F:/tmp/f1目录下的所有文件压缩至g2.tar.gz中,字符编码为GBK。 参数path省略,此时占位符“,”不可省略。 |
3 |
=gzip(file("F:/tmp/test/g3.tar.gz");,"F:/tmp/f1") |
tarfile参数为文件对象时,将F:/tmp/f1目录下的所有文件压缩至g3.tar.gz中。 |
4 |
=gzip("F:/tmp/test/g4.tar.gz";"F:/tmp/f2","*") |
将F:/tmp/f2目录下的所有文件压缩至g4.tar.gz中。 |
5 |
=gzip("F:/tmp/test/g4.tar.gz";"F:/tmp/f2") |
同上。 |
6 |
=gzip("F:/tmp/test/g5.tar.gz";,"F:/tmp/f2/?ity.txt") |
将F:/tmp/f2目录下匹配?ity.txt的文件压缩至g5.tar.gz中。 |
7 |
=["f2/*.txt","f2/*.csv","f2/*.xls"] |
|
8 |
=gzip("F:/tmp/test/g6.tar.gz";"F:/tmp",A7) |
将F:/tmp/f2 目录下的txt、csv、xls文件压缩至g6.tar.gz中。 |
9 |
=[file("*.xlsx"),file("*.txt"),file("*.json")] |
|
10 |
=gzip("F:/tmp/test/g7.tar.gz";"F:/tmp/f1",A9) |
将F:/tmp/f1 目录下的xlsx、txt、json文件压缩至g7.tar.gz中。 |
11 |
=gzip("F:/tmp/test/g8.tar.gz";"f3") |
将F:/tmp/test/f3下的文件压缩至g8.tar.gz中。 |
12 |
=gzip@u("F:/tmp/test/g9.tar.gz";"F:/tmp/f1") |
将g9.tar.gz文件解压至F:/tmp/f1 目录下。 |
13 |
=gzip@u("F:/tmp/test/g9.tar.gz") |
将g9.tar.gz文件解压至F:/tmp/test目录下。 |
14 |
=gzip@a("F:/tmp/test/g10.tar.gz";"F:/tmp/f1","*.txt") |
将F:/tmp/f1 目录中的txt文件追加到g10.tar.gz中。 |
15 |
=gzip@dn("g11.tar.gz";,["*.txt","*.xls","*.csv"]) |
删除g11.tar.gz中所有的txt、xls、csv文件,且不处理子目录下的文件。 |
16 |
=gzip@f("g12.tar.gz") |
列出g12.tar.gz压缩包内的所有文件名。 |
17 |
=gzip@p("g13.tar.gz") |
列出g13.tar.gz压缩包内的所有文件目录。 |