diff options
author | Bjørn Mork <bjorn@mork.no> | 2015-05-15 10:20:47 +0200 |
---|---|---|
committer | Bjørn Mork <bjorn@mork.no> | 2015-05-15 10:20:47 +0200 |
commit | 73b16af8feec390afbabd9356d6e5e83c0390838 (patch) | |
tree | 3730020ba2f9caeb9d7815a975af51830b51ce11 /coreutils/seq.c |
busybox: imported from http://www.busybox.net/downloads/busybox-1.13.3.tar.bz2busybox-1.13.3
Signed-off-by: Bjørn Mork <bjorn@mork.no>
Diffstat (limited to 'coreutils/seq.c')
-rw-r--r-- | coreutils/seq.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/coreutils/seq.c b/coreutils/seq.c new file mode 100644 index 0000000..01d71f2 --- /dev/null +++ b/coreutils/seq.c @@ -0,0 +1,40 @@ +/* vi: set sw=4 ts=4: */ +/* + * seq implementation for busybox + * + * Copyright (C) 2004, Glenn McGrath + * + * Licensed under the GPL v2, see the file LICENSE in this tarball. + */ + +#include "libbb.h" + +/* This is a NOFORK applet. Be very careful! */ + + +int seq_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; +int seq_main(int argc, char **argv) +{ + double last, increment, i; + + i = increment = 1; + switch (argc) { + case 4: + increment = atof(argv[2]); + case 3: + i = atof(argv[1]); + case 2: + last = atof(argv[argc-1]); + break; + default: + bb_show_usage(); + } + + /* You should note that this is pos-5.0.91 semantics, -- FK. */ + while ((increment > 0 && i <= last) || (increment < 0 && i >= last)) { + printf("%g\n", i); + i += increment; + } + + return fflush(stdout); +} |