O sort
utilitário de texto GNU possui uma -R
opção não padrão para randomizar linhas de entrada.
OSX sort
não tem esta extensão. Existe funcionalidade semelhante disponível em outro filtro de texto?
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:
No OS X, se você não deseja instalar o homebrew (mas realmente deve), você pode usar
perl
ouruby
:ou
fonte
Use
shuf
ousort
docoreutils
pacote, mas então você tem que adicionar/usr/local/bin
ao seuPATH
no~/.bashrc
arquivo, por exemplo:Como alternativa, você pode tentar
ex
:Fonte: Como embaralhar uma lista no vim?
fonte
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 .)
fonte