X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=programs%2Fimagex.c;h=d047130b20b395983283ce21b5619448954734da;hp=0b7c96b0b7556f9aa72471e100583b3d307814a2;hb=9368708ff94a8da723874c098d24fefcd5866207;hpb=12f851cd2fbd19c6b9d5358756d4b7c0a9944b92 diff --git a/programs/imagex.c b/programs/imagex.c index 0b7c96b0..d047130b 100644 --- a/programs/imagex.c +++ b/programs/imagex.c @@ -77,7 +77,7 @@ static const char *usage_strings[] = { " [--flags EDITION_ID] [--verbose] [--dereference]\n" " [--config=FILE] [--threads=NUM_THREADS]\n", [DELETE] = -"imagex delete WIMFILE (IMAGE_NUM | IMAGE_NAME | all) [--check]\n", +"imagex delete WIMFILE (IMAGE_NUM | IMAGE_NAME | all) [--check] [--soft]\n", [DIR] = "imagex dir WIMFILE (IMAGE_NUM | IMAGE_NAME | all)\n", [EXPORT] = @@ -99,7 +99,7 @@ static const char *usage_strings[] = { "imagex mountrw WIMFILE [IMAGE_NUM | IMAGE_NAME] DIRECTORY\n" " [--check] [--debug] [--streams-interface=INTERFACE]\n", [OPTIMIZE] = -"imagex optimize WIMFILE [--check]\n", +"imagex optimize WIMFILE [--check] [--recompress]\n", [SPLIT] = "imagex split WIMFILE SPLIT_WIMFILE PART_SIZE_MB [--check]\n", [UNMOUNT] = @@ -134,6 +134,7 @@ static const struct option capture_or_append_options[] = { }; static const struct option delete_options[] = { {"check", no_argument, NULL, 'c'}, + {"soft", no_argument, NULL, 's'}, {NULL, 0, NULL, 0}, }; @@ -172,7 +173,8 @@ static const struct option mount_options[] = { }; static const struct option optimize_options[] = { - {"check", no_argument, NULL, 'c'}, + {"check", no_argument, NULL, 'c'}, + {"recompress", no_argument, NULL, 'r'}, {NULL, 0, NULL, 0}, }; @@ -674,6 +676,9 @@ static int imagex_delete(int argc, const char **argv) open_flags |= WIMLIB_OPEN_FLAG_CHECK_INTEGRITY; write_flags |= WIMLIB_WRITE_FLAG_CHECK_INTEGRITY; break; + case 's': + write_flags |= WIMLIB_WRITE_FLAG_SOFT_DELETE; + break; default: usage(DELETE); return -1; @@ -1364,6 +1369,9 @@ static int imagex_optimize(int argc, const char **argv) open_flags |= WIMLIB_OPEN_FLAG_CHECK_INTEGRITY; write_flags |= WIMLIB_WRITE_FLAG_CHECK_INTEGRITY; break; + case 'r': + write_flags |= WIMLIB_WRITE_FLAG_RECOMPRESS; + break; default: usage(OPTIMIZE); return -1;