O Ubuntu Linux possui uma ótima ferramenta chamada shuf, que funciona como cabeça, exceto que fornece dez linhas aleatórias. Não consegui encontrar no Homebrew. Qual é a maneira mais simples de instalá-lo no OS X?
O Ubuntu Linux possui uma ótima ferramenta chamada shuf, que funciona como cabeça, exceto que fornece dez linhas aleatórias. Não consegui encontrar no Homebrew. Qual é a maneira mais simples de instalá-lo no OS X?
Respostas:
Você pode instalar o coreutils com brew install coreutils
.
shuf
será vinculado como gshuf
. Leia as advertências ao instalar o coreutils.
brew install coreutils
instala os utils com o prefixo g
por padrão no OSX, assim você pode instalá-lo usando o comando acima.
Outra solução é aprender sobre as ferramentas fornecidas pelo fornecedor. Certamente você poderia cadeia jot
, paste
, sort
, cut
, head
e obter os mesmos resultados.
jot -r "$(wc -l FILE)" 1 |
paste - FILE |
sort -n |
cut -f 2- |
head -n 10
jot
antes. Obrigado por expandir meu conhecimento.
Você pode instalar coreutils com Macports como
sudo port install coreutils
Isso colocará os utilitários principais do GNU em / opt / local / bin com um ag prefixado
por exemplo gshuf
Outra opção é instalar o randomize-lines
pacote (homebrew), que possui um rl
comando com funcionalidade semelhante ao 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