Respostas:
Se desejar, você pode instalar o GNU sort
através do pacote coreutils do GNU sobre o Homebrew , que é um gerenciador de pacotes para o OS X.
Executar isso instalaria o Homebrew.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Em seguida, basta seguir as instruções de instalação. Quando o Homebrew estiver instalado, execute
brew install coreutils
Isso instalará a classificação GNU como gsort
, para que você possa usá-lo como sort
em qualquer GNU Linux.
Como alternativa, dê uma olhada nessas perguntas do Stack Overflow, que mencionam alguns métodos:
Como aleatoriamente as linhas de um arquivo usando ferramentas padrão no Redhat Linux
Como embaralhar as linhas de um arquivo de texto na linha de comando do Unix?
Ou dê uma olhada nesta página commandlinefu.com:
Use shuf
ou sort
do coreutils
pacote, mas então você tem que adicionar /usr/local/bin
ao seu PATH
no ~/.bashrc
arquivo, por exemplo:
export PATH=/usr/local/sbin:/usr/local/bin:$PATH
Como alternativa, você pode tentar ex
:
ex -s +"%s/^/\=reltimestr(reltime())[-2:].' '" +"sort n" +"%s/^\S* //" +%p -cq! /dev/stdin
Você pode instalar o rl
comando via homebrew ( brew install randomize-lines
).
É bastante rápido e possui opções para limitar o número de itens retornados, além de especificar o delimitador (espaço em vez de avanço de linha, por exemplo).
(Consulte também https://stackoverflow.com/a/42056195/43615 .)