diff options
author | June McEnroe <june@causal.agency> | 2021-05-17 18:27:56 -0400 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2021-05-17 18:27:56 -0400 |
commit | c7ae65ee36b0c4f2ad3c7ff730bc879c628ea163 (patch) | |
tree | e0ea1e28bd7bf10a2260740c8130b254159a8876 | |
parent | Allocate 1 + ParamCap matches in unscoop (diff) | |
download | litterbox-c7ae65ee36b0c4f2ad3c7ff730bc879c628ea163.tar.gz litterbox-c7ae65ee36b0c4f2ad3c7ff730bc879c628ea163.zip |
Print paths to stdout and progress to stderr
-rw-r--r-- | unscoop.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/unscoop.c b/unscoop.c index 4779278..e7e706d 100644 --- a/unscoop.c +++ b/unscoop.c @@ -388,7 +388,7 @@ int main(int argc, char *argv[]) { size_t sizeTotal = 0; size_t sizeRead = 0; - size_t sizePercent = -1; + size_t sizePercent = 0; struct { regmatch_t match[ParamCap]; } *paths = calloc(argc, sizeof(*paths)); @@ -411,6 +411,8 @@ int main(int argc, char *argv[]) { size_t cap = 0; for (int i = optind; i < argc; ++i) { if (!argv[i]) continue; + printf("%s\n", argv[i]); + fprintf(stderr, " %3zu%%\r", sizePercent); FILE *file = fopen(argv[i], "r"); if (!file) err(EX_NOINPUT, "%s", argv[i]); @@ -433,8 +435,7 @@ int main(int argc, char *argv[]) { sizeRead += len; if (100 * sizeRead / sizeTotal != sizePercent) { sizePercent = 100 * sizeRead / sizeTotal; - printf("\r%3zu%%", sizePercent); - fflush(stdout); + fprintf(stderr, " %3zu%%\r", sizePercent); } } if (ferror(file)) err(EX_IOERR, "%s", argv[i]); @@ -442,7 +443,7 @@ int main(int argc, char *argv[]) { fclose(file); dbExec(SQL(COMMIT TRANSACTION;)); } - printf("\n"); + fprintf(stderr, "\n"); dbClose(); } |