我尝试filename.tar.Z
在 SunOS 上使用单个命令创建文件,但似乎不起作用:
bash-3.2$ tar c DIR | compress >DIR.tar.Z
tar: /dev/rmt/0: Permission denied
bash-3.2$
我尝试过的其他方法是这样的:
bash-3.2$ tar cf DIR DIR.tar | compress -f DIR.tar
DIR.tar: No such file or directory
tar: DIR: Is a directory
我只想创建filename.tar.Z
不包含其他压缩文件。例如,如果我一个接一个地写入命令,其工作原理如下:
bash-3.2$ ls
DIR
bash-3.2$ tar -cf DIR.tar DIR
bash-3.2$ ls
DIR DIR.tar
bash-3.2$ compress -f DIR.tar
bash-3.2$ ls
DIR DIR.tar.Z
bash-3.2$
我没有编辑我的帖子的权限,所以请提出一些有用的建议。
答案1
那应该可行:
tar cvf - DIR | compress -c >DIR.tar.Z
其工作原理如下:
tar
创建 (c
) 档案,并写入文件-
(f
),即标准输出。现在将其通过管道传输到compress
,后者也会写入标准输出 (-c
)。我们将其重定向到文件。