X-Git-Url: https://zdv2.bktei.com/gitweb/BK-2020-03.git/blobdiff_plain/a8f8046e9eff5728dedb61129f258e4cad7b4f61..db51b505288f4060d8a3de1ed419263b50428e51:/unitproc/bkt-decimate?ds=sidebyside diff --git a/unitproc/bkt-decimate b/unitproc/bkt-decimate new file mode 100644 index 0000000..47db83f --- /dev/null +++ b/unitproc/bkt-decimate @@ -0,0 +1,23 @@ +#!/bin/bash + +decimate() { + # Desc: Randomly remove 10% of stdin lines + # Depends: GNU Coreutils 8.32 (shuf) + # Version: 0.0.1 + + # Read lines + mapfile -t lines; + + # Calc lines to keep, lk + lc="${#lines[@]}"; + lk="$((lc * 900 / 1000))"; + + printf "%s\n" "${lines[@]}" | \ + nl -w1 -s' ' | \ + shuf | \ + head -n "$lk" | \ + sort -n -k1,1 | \ + cut -d' ' -f2- ; +}; # randomly eliminate 10% of lines + +echo "$WARNING:This is a Bash function definition."