Hi, It looks like `ls -1s` (single-column + '-s') does not print the "total" summary. The manual page describes both flags as follows:
-1 (The numeric digit "one"). Force output to be one entry per line. This is the default when output is not to a terminal. -s Display the number of file system blocks actually used by each file [...] If the output is to a terminal, a total sum for all the file sizes is output on a line before the listing. I.e., there is no note of '-1' changing the behavior of '-s'. Current output: $ ls -1s 4 CVS 4 Makefile 84 a.out 12 cmp.c 8 extern.h 24 ls.1 36 ls.c 8 ls.h 4 main.c 28 print.c 12 util.c Expected output: $ ls -1s total 224 4 CVS 4 Makefile 84 a.out 12 cmp.c 8 extern.h 24 ls.1 36 ls.c 8 ls.h 4 main.c 28 print.c 12 util.c The fix is trivial (see attached), but I wanted to check whether perhaps this was done by intent and there's a reason why we're not printing the total when using `-1`? -Jan
Index: print.c =================================================================== RCS file: /cvsroot/src/bin/ls/print.c,v retrieving revision 1.57 diff -b -u -r1.57 print.c --- print.c 17 May 2020 23:34:11 -0000 1.57 +++ print.c 3 Nov 2024 19:30:11 -0000 @@ -117,6 +117,9 @@ { FTSENT *p; + if (!f_leafonly) + printtotal(dp); /* "total: %u\n" */ + for (p = dp->list; p; p = p->fts_link) { if (IS_NOPRINT(p)) continue;