如何使用 tar 压缩包含特定子文件夹的主文件夹

如何使用 tar 压缩包含特定子文件夹的主文件夹

假设我们有如下文件夹结构

main_folder
   - sub_folder1
   - sub_folder2
   - sub_folder3
        - valid_folder1
        - valid_folder2
        - junk_folder1
        - junk_folder2
    - sub_folder4

如何压缩main_folder使用tar命令中的所有文件夹和文件但是仅包含valid_folder1valid_folder2来自sub_folder3

我知道我们可以使用--exclude选项排除这些垃圾文件夹。但这些垃圾文件夹本质上是动态的,无法使用排除选项。

答案1

您可以在tar命令上使用正则表达式指定多个-exclude参数,例如:
--exclude='*sub_folder1*' --exclude='*sub_folder2*'

这样tar将排除您不想要的文件夹,而仅包含正则表达式未暗示名称的文件夹exclude

更多信息请参阅:

相关内容