diff options
author | Rob Landley <rob@landley.net> | 2012-08-25 14:25:22 -0500 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2012-08-25 14:25:22 -0500 |
commit | 3a9241add947cb6d24b5de7a8927517426a78795 (patch) | |
tree | d122ab6570439cd6b17c7d73ed8d4e085e0b8a95 /toys/tac.c | |
parent | 689f095bc976417bf50810fe59a3b3ac32b21105 (diff) | |
download | toybox-3a9241add947cb6d24b5de7a8927517426a78795.tar.gz |
Move commands into "posix", "lsb", and "other" menus/directories.
Diffstat (limited to 'toys/tac.c')
-rw-r--r-- | toys/tac.c | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/toys/tac.c b/toys/tac.c deleted file mode 100644 index cd5f83f6..00000000 --- a/toys/tac.c +++ /dev/null @@ -1,55 +0,0 @@ -/* vi: set sw=4 ts=4: - * - * tac.c - output lines in reverse order - * - * Copyright 2012 Rob Landley <rob@landley.net> - * - * Not in SUSv4. - -USE_TAC(NEWTOY(tac, NULL, TOYFLAG_USR|TOYFLAG_BIN)) - -config TAC - bool "tac" - default y - help - usage: tac [FILE...] - - Output lines in reverse order. -*/ - -#include "toys.h" - -void do_tac(int fd, char *name) -{ - struct arg_list *list = NULL; - char *c; - - // Read in lines - for (;;) { - struct arg_list *temp; - int len; - - if (!(c = get_line(fd))) break; - - len = strlen(c); - if (len && c[len-1]=='\n') c[len-1] = 0; - temp = xmalloc(sizeof(struct arg_list)); - temp->next = list; - temp->arg = c; - list = temp; - } - - // Play them back. - while (list) { - struct arg_list *temp = list->next; - xputs(list->arg); - free(list->arg); - free(list); - list = temp; - } -} - -void tac_main(void) -{ - loopfiles(toys.optargs, do_tac); -} |