diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2023-02-11 03:12:21 +0000 |
---|---|---|
committer | Laurent Bercot <ska@appnovation.com> | 2023-02-11 03:12:21 +0000 |
commit | 774654ad56fc9304e4a064232760835c7a2a6c13 (patch) | |
tree | 3f539521073866497ff0370d8a6464c9356cadb4 /src/skaembutils/s6-ls.c | |
parent | 790c8681d3451b61a536871dad234fc294796fd8 (diff) | |
download | s6-portable-utils-774654ad56fc9304e4a064232760835c7a2a6c13.tar.xz |
Add multicall configuration
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'src/skaembutils/s6-ls.c')
-rw-r--r-- | src/skaembutils/s6-ls.c | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/src/skaembutils/s6-ls.c b/src/skaembutils/s6-ls.c deleted file mode 100644 index b426da7..0000000 --- a/src/skaembutils/s6-ls.c +++ /dev/null @@ -1,57 +0,0 @@ -/* ISC license. */ - -#include <string.h> - -#include <skalibs/sgetopt.h> -#include <skalibs/direntry.h> -#include <skalibs/buffer.h> -#include <skalibs/strerr.h> - -#define USAGE "s6-ls [ -0 ] [ -a | -A ] [ -x exclude ] dir" - -int main (int argc, char const *const *argv) -{ - unsigned int all = 0 ; - char const *exclude = 0 ; - char delim = '\n' ; - PROG = "s6-ls" ; - { - subgetopt l = SUBGETOPT_ZERO ; - for (;;) - { - int opt = subgetopt_r(argc, argv, "0aAx:", &l) ; - if (opt == -1) break ; - switch (opt) - { - case '0': delim = '\0' ; break ; - case 'a': all = 1 ; break ; - case 'A': all = 2 ; break ; - case 'x': exclude = l.arg ; break ; - default : strerr_dieusage(100, USAGE) ; - } - } - argc -= l.ind ; argv += l.ind ; - } - if (!argc) strerr_dieusage(100, USAGE) ; - { - direntry *d ; - DIR *dir = opendir(*argv) ; - if (!dir) - strerr_diefu2sys(111, "open directory ", *argv) ; - while ((d = readdir(dir))) - { - if ((d->d_name[0] == '.') && (all < 2)) - { - if (!all || !d->d_name[1] || ((d->d_name[1] == '.') && !d->d_name[2])) continue ; - } - if (exclude && !strcmp(exclude, d->d_name)) continue ; - if ((buffer_puts(buffer_1, d->d_name) < 0) - || (buffer_put(buffer_1, &delim, 1) < 0)) - strerr_diefu1sys(111, "write to stdout") ; - } - dir_close(dir) ; - } - if (!buffer_flush(buffer_1)) - strerr_diefu1sys(111, "write to stdout") ; - return 0 ; -} |