summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortv <tv@also>2011-07-31 01:17:28 +0200
committertv <tv@also>2011-07-31 01:17:28 +0200
commit713c9d04db95dd8b3409014fd8f9529d34d993cc (patch)
treed58861d5f4c7b79dc49e29b2c88c6fe06c8bc77d
parent19f48ebe9a90e4af6e0657d3368be031e051d456 (diff)
randline: initial commit
-rwxr-xr-xutil/bin/randline12
1 files changed, 12 insertions, 0 deletions
diff --git a/util/bin/randline b/util/bin/randline
new file mode 100755
index 00000000..cd9476e7
--- /dev/null
+++ b/util/bin/randline
@@ -0,0 +1,12 @@
+#! /bin/sh
+#
+# choose a line randomly.
+#
+set -euf
+
+lines="`cat`"
+count=`echo "$lines" | wc -l`
+random=`od -An -t u8 -N 8 /dev/urandom`
+choice=`echo "$random % $count + 1" | bc`
+
+echo "$lines" | sed -n "${choice}p"