Ubuntu Linux tiene una gran herramienta llamada shuf, que funciona a la perfección, excepto que te da diez líneas aleatorias. No pude encontrarlo en Homebrew. ¿Cuál es la forma más sencilla de instalarlo en OS X?
Ubuntu Linux tiene una gran herramienta llamada shuf, que funciona a la perfección, excepto que te da diez líneas aleatorias. No pude encontrarlo en Homebrew. ¿Cuál es la forma más sencilla de instalarlo en OS X?
Puedes instalar coreutils con brew install coreutils
.
shuf
se vinculará como gshuf
. Lea las advertencias cuando instale coreutils.
Otra solución más es conocer las herramientas proporcionadas por el proveedor. Ciertamente, podría encadenar jot
, paste
, sort
, cut
, head
y obtener los mismos resultados.
jot -r "$(wc -l FILE)" 1 |
paste - FILE |
sort -n |
cut -f 2- |
head -n 10
Puedes instalar coreutils con Macports como
sudo port install coreutils
Esto pondrá las utilidades principales de GNU en / opt / local / bin con una g precedida
e, g gshuf
Otra opción es instalar el paquete randomize-lines
(homebrew), que tiene un comando rl
que tiene una funcionalidad similar a shuf.
Usage: rl [OPTION]... [FILE]...
Randomize the lines of a file (or stdin).
-c, --count=N select N lines from the file
-r, --reselect lines may be selected multiple times
-o, --output=FILE
send output to file
-d, --delimiter=DELIM
specify line delimiter (one character)
-0, --null set line delimiter to null character
(useful with find -print0)
-n, --line-number
print line number with output lines
-q, --quiet, --silent
do not output any errors or warnings
-h, --help display this help and exit
-V, --version output version information and exit
Lea otras preguntas en las etiquetas command-line