• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

debian/H26-Jul-2008-228165

AUTHORSH A D29-Jul-200538 21

COPYINGH A D16-Jun-200517.6 KiB341281

ChangeLogH A D26-Jul-200821.4 KiB924537

INSTALLH A D26-Jul-20089.3 KiB238179

Makefile.amH A D14-Jun-20071.3 KiB4117

Makefile.inH A D26-Jul-200821 KiB658555

NEWSH A D26-Jul-20083.7 KiB12796

READMEH A D26-Jul-20083.2 KiB8860

TODOH A D14-Jun-20071.1 KiB2423

aclocal.m4H A D26-Jul-200831.5 KiB869779

alloc.cH A D04-Feb-20071.7 KiB7946

alloc.hH A D04-Feb-20071.2 KiB478

buffer.cH A D25-Jun-20053.6 KiB15997

buffer.hH A D25-Jun-20052 KiB6716

config.guessH A D26-Jul-200843.8 KiB1,5271,315

config.h.inH A D26-Jul-20082.9 KiB11678

config.subH A D26-Jul-200832.6 KiB1,6591,514

configureH A D26-Jul-2008227.5 KiB8,1596,806

configure.acH A D26-Jul-20084 KiB119103

depcompH A D26-Jul-200817.4 KiB590375

getopt_long.cH A D25-Jun-20052.8 KiB9052

getopt_long.hH A D25-Jun-20051.5 KiB5115

install-shH A D26-Jul-200813.3 KiB520344

missingH A D26-Jul-200810.9 KiB368275

mkinstalldirsH A D26-Jul-20083.4 KiB162112

random.cH A D25-Jun-20052.5 KiB12564

random.hH A D25-Jun-20051.2 KiB416

rl.1.inH A D26-Jul-20084.3 KiB12386

rl.cH A D26-Jul-200815 KiB539421

rl.hH A D25-Jun-20051.3 KiB5516

rl.lsm.inH A D21-Nov-2004651 1918

rl.spec.inH A D29-Jul-20051.1 KiB4234

README

1rl - Randomize Lines
2
3rl reads lines from a input file or stdin, randomizes the lines and outputs a
4specified number of lines. It does this with only a single pass over the input
5while trying to use as little memory as possible.
6
7I wrote rl in my spare time mainly to be able to select a random audio file to
8play when my toast is done (script in combination with find and sleep).
9Another reason was to familiarize myself with autoconf and friends.
10
11The most recent version of rl can be found at
12http://ch.tudelft.nl/~arthur/rl/
13
14Warning: The command line options and default behaviour may change between
15releases until a 1.0 release is made.
16
17Another Warning: I have mostly lost interest in this project and am not
18planning on doing much development on it any more. I will however still accept
19patches and fix important bugs (this more or less contradicts the previous
20warning).
21
22Note: Users are recommended to use the shuf command instead which has been
23part of GNU coreutils since release 6.0.
24
25
26COPYRIGHT NOTICE
27================
28
29Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Arthur de Jong
30
31This program is free software; you can redistribute it and/or modify
32it under the terms of the GNU General Public License as published by
33the Free Software Foundation; either version 2 of the License, or
34(at your option) any later version.
35
36This program is distributed in the hope that it will be useful,
37but WITHOUT ANY WARRANTY; without even the implied warranty of
38MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
39GNU General Public License for more details.
40
41You should have received a copy of the GNU General Public License
42along with this program; if not, write to the Free Software
43Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
44
45
46INSTALLATION INSTRUCTIONS
47=========================
48
49rl should compile fine on most Unix-like operating systems. It is written to
50be as portable as possible.
51
52rl is developed on Debian GNU/Linux 4.0 (etch) and unstable (sid) and tested
53on Solaris 8 (once in a while), OpenBSD 2.7 (hardly ever) and HP-UX 10 (a long
54time ago).
55
56rl uses a configure script to guess build parameters for your system.
57Configuration, compilation and installation should be as simple as this:
58
59  % ./configure   (use --help for options)
60  % make          (compile)
61  % make install  (install)
62
63For more details read the INSTALL file.
64
65
66DEVELOPMENT STATUS
67==================
68
69Development on rl has slowed down a bit because it works good enough for me.
70The software is however not yet in such a state that I would be willing to
71label it as a final release because the TODO list contains some important
72points (mainly the files with a large number of lines).
73
74Since GNU coreutils 6.0 includes a tool 'shuf' that pretty much does the same
75thing (and likely works better with large files) the likelihood of a new
76release is small.
77
78A quick comparison between rl and shuf indicates that rl uses less CPU time
79(about half) while shuf uses less memory (about a quarter).
80
81
82REPORTING BUGS
83==============
84
85If you find any bugs or missing features please send an email to
86  arthur@ch.tudelft.nl
87Please include as much information as needed. Patches are more than welcome.
88