From 1efbe4cf958b8fcd590bd887652d1afd9d100c20 Mon Sep 17 00:00:00 2001 From: Thorsten Töpper Date: Sat, 5 Jul 2025 17:03:28 +0200 Subject: output: format string: uid and gid --- src/options.c | 4 +++- src/output.c | 13 +++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/options.c b/src/options.c index 93f0ceb..a2a9221 100644 --- a/src/options.c +++ b/src/options.c @@ -71,11 +71,13 @@ void usage(char *executable) { fprintf(stderr, "\n--format-string: Characters unlike the following are ignored\n"); fprintf(stderr, " n - name\n"); fprintf(stderr, " s - size\n"); + fprintf(stderr, " u - user id\n"); + fprintf(stderr, " g - group id\n"); + fprintf(stderr, " T - type\n"); fprintf(stderr, " t - time defined by --time-field (default: modification time)\n"); fprintf(stderr, " A - access time\n"); fprintf(stderr, " C - change time\n"); fprintf(stderr, " M - modification time\n"); - fprintf(stderr, " T - type\n"); } diff --git a/src/output.c b/src/output.c index 102645f..1e08f2d 100644 --- a/src/output.c +++ b/src/output.c @@ -23,8 +23,10 @@ #define out_vsep fputc('|', stdout) -#define out_print_newline() fputc('\n', stdout) -#define out_print_fname(x) printf(" %s ", x->fname) +#define out_print_newline() fputc('\n', stdout) +#define out_print_fname(x) printf(" %s ", x->fname) +#define out_print_uid(x) printf(" %4u ", x->ln_stat.st_gid) +#define out_print_gid(x) printf(" %4u ", x->ln_stat.st_uid) void out_print_size(struct list_node *ptr); void out_print_time(time_t tv); @@ -154,6 +156,7 @@ inline void out_print_type(struct list_node *ptr) { /* The ones longer than 12 characters are rare. */ printf(" %-12s ", entry); } + /* === END OF FORMATTING FUNCTIONS === */ @@ -260,6 +263,12 @@ void print_list_formatted(const char *format, struct list_head *list) { case 'T': out_print_type(ptr); break; + case 'u': + out_print_uid(ptr); + break; + case 'g': + out_print_gid(ptr); + break; case ' ': /* just ignore this without warning */ break; default: -- cgit v1.2.3-70-g09d2