createArchiveFiltered

fnArchiveHandle createArchiveFiltered(string fsRoot, string outDir, string base, string ext, CreateOptions co, FilterOptions fo, out OperationStats stats) @safe

Creates an archive with file filtering support.

This function creates an archive that only includes files matching the specified filter criteria. Use FilterOptions to define include/exclude patterns for filenames and paths.

Parameters

fsRootfilesystem root to back up
outDirdirectory where slices are written
basearchive base name
extslice extension (e.g., "dar")
cocreate options created via CreateOptions.create()
fofilter options created via FilterOptions.create()
statsoutput parameter to receive operation statistics (optional)

Returns

ArchiveHandle for the created archive.

Example:

auto co = CreateOptions.create();
auto fo = FilterOptions.create();
fo.addInclude("*.txt");    // Only include .txt files
fo.addExclude("*.bak");    // Exclude backup files

OperationStats stats;
auto arc = createArchiveFiltered("/home/user/docs", "/backups", "docs", "dar", co, fo, stats);
writefln("Files archived: %d", stats.treated);

fnArchiveHandle createArchiveFiltered(string fsRoot, string outDir, string base, string ext, CreateOptions co, FilterOptions fo) @safe

Creates an archive with file filtering support (no stats).

Convenience overload that doesn't return operation statistics.

Parameters

fsRootfilesystem root to back up
outDirdirectory where slices are written
basearchive base name
extslice extension (e.g., "dar")
cocreate options created via CreateOptions.create()
fofilter options created via FilterOptions.create()

Returns

ArchiveHandle for the created archive.