今天当我想对指定目录中的所有文件和目录进行 tar 处理时遇到了这个问题。执行以下操作是不够的,因为隐藏文件(.
不包括以 开头的文件):
tar -czvf ~/tarfile.tar.gz /path/to/dir/*
然后我想到了以下几点:
find /path/to/dir/* -execdir /bin/tar -czvf ~/tarfile.tar.gz '{}' +
但这还不够。如果execdir
已达到命令留置权限制并且需要使用找到的其余文件集重新运行相同的命令怎么办?
因此,如果 tar 文件不存在,我需要一个选项或某种方法来创建它。如果存在,则附加到它。试图找到解决此问题的方法,但无法解决。想到了-r
选项,但没有奏效,因为它需要存在已经创建的 tar 文件。
这是否意味着没有办法并且必须编写一个迷你脚本来完成这个逻辑?