diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2008-11-12 13:22:24 +0000 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2008-11-12 13:22:24 +0000 |
commit | c021cb08b58dee7480fe6035d8ac00f0dbe83188 (patch) | |
tree | 818cd62174f60f4a4647b6bbcea27a1ca1029031 /coreutils | |
parent | 2598f761bb526afd8ec0de06071fcd6f1a897cd5 (diff) | |
download | busybox-c021cb08b58dee7480fe6035d8ac00f0dbe83188.tar.gz |
- add support for seq -s <separator>
Diffstat (limited to 'coreutils')
-rw-r--r-- | coreutils/seq.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/coreutils/seq.c b/coreutils/seq.c index 899cd696b..cf856bf04 100644 --- a/coreutils/seq.c +++ b/coreutils/seq.c @@ -16,8 +16,10 @@ int seq_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; int seq_main(int argc, char **argv) { double last, increment, i; - enum { OPT_w = 1 }; - unsigned opt = getopt32(argv, "+w"); + enum { OPT_w = 1, OPT_s }; + const char *sep = "\n"; + bool is_consecutive = 0; + unsigned opt = getopt32(argv, "+ws:", &sep); unsigned width = 0; argc -= optind; @@ -39,9 +41,12 @@ int seq_main(int argc, char **argv) /* You should note that this is pos-5.0.91 semantics, -- FK. */ while ((increment > 0 && i <= last) || (increment < 0 && i >= last)) { - printf("%0*g\n", width, i); + if (is_consecutive++) { + printf("%s", sep); + } + printf("%0*g", width, i); i += increment; } - + bb_putchar('\n'); return fflush(stdout); } |