.RE
.SH NOTES
-You can also use \fBimagex export\fR to export all images from a split WIM.
-This would be nearly the same as \fBimagex join\fR, although some information in
-the XML data could be discarded.
+\fBimagex join\fR is roughly equivalent to:
+.RS
+.PP
+\fBimagex export\fR \fISWM_PART_1\fR --ref="\fISWM_GLOB\fR" [--check] all \fIOUT_WIMFILE\fR
+.RE
+.PP
-Perhaps for this reason, Microsoft's implementation of imagex does not provide a
-\fB/join\fR option.
.SH SEE ALSO
.BR imagex (1)
+.BR imagex-export (1)
" [--check] [--debug] [--streams-interface=INTERFACE]\n"
" [--staging-dir=DIR]\n",
[OPTIMIZE] =
-"imagex optimize WIMFILE [--check] [--recompress]\n",
+"imagex optimize WIMFILE [--check] [--recompress] [--compress=TYPE]\n",
[SPLIT] =
"imagex split WIMFILE SPLIT_WIMFILE PART_SIZE_MB [--check]\n",
[UNMOUNT] =
putchar('\n');
break;
case WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_BEGIN:
- /*printf("Applying image %d (%s) to `%s'\n",*/
- /*info->extract.image,*/
- /*info->extract.image_name,*/
- /*info->extract.target);*/
+ printf("Applying image %d (%s) to `%s'\n",
+ info->extract.image,
+ info->extract.image_name,
+ info->extract.target);
break;
/*case WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_END:*/
/*printf("Done applying image %d!\n",*/
ret = wimlib_overwrite(w, write_flags, 0, imagex_progress_func);
- new_size = file_get_size(argv[0]);
- printf("`%s' optimized size: ", wimfile);
- if (new_size == -1)
- puts("Unknown");
- else
- printf("%"PRIu64" KiB\n", new_size >> 10);
+ if (ret == 0) {
+ new_size = file_get_size(argv[0]);
+ printf("`%s' optimized size: ", wimfile);
+ if (new_size == -1)
+ puts("Unknown");
+ else
+ printf("%"PRIu64" KiB\n", new_size >> 10);
- fputs("Space saved: ", stdout);
- if (new_size != -1 && old_size != -1) {
- printf("%lld KiB\n",
- ((long long)old_size - (long long)new_size) >> 10);
- } else {
- puts("Unknown");
+ fputs("Space saved: ", stdout);
+ if (new_size != -1 && old_size != -1) {
+ printf("%lld KiB\n",
+ ((long long)old_size - (long long)new_size) >> 10);
+ } else {
+ puts("Unknown");
+ }
}
wimlib_free(w);
ret = ops->apply_dentry(dentry, args);
if (ret != 0)
goto out;
- if (args->progress.extract.completed_bytes >= next_progress) {
+ if (args->progress.extract.completed_bytes >= next_progress
+ && args->progress.extract.total_bytes != 0)
+ {
progress_func(WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS,
&args->progress);
next_progress += bytes_per_progress;