Installa shuf su OS X?

38

Ubuntu Linux ha un ottimo strumento chiamato shuf, che funziona come head tranne che ti dà dieci righe casuali. Non sono riuscito a trovarlo su Homebrew. Qual è il modo più semplice di installarlo su OS X?

    
posta The Unfun Cat 22.08.2014 - 17:53
fonte

4 risposte

66

Puoi installare coreutils con brew install coreutils .

shuf verrà collegato come gshuf . Leggi le avvertenze quando installi coreutils.

    
risposta data 22.08.2014 - 18:30
fonte
12

Un'altra soluzione è conoscere gli strumenti forniti dal fornitore. Certamente potresti concatenare jot , paste , sort , cut , head e ottenere gli stessi risultati.

jot -r "$(wc -l FILE)" 1 |
paste - FILE |
sort -n |
cut -f 2- |
head -n 10
  • jot produce un numero casuale da 1 al numero di righe in FILE per ogni riga
  • incolla incolla il numero casuale su ogni riga in FILE
  • ordina gli ordinamenti numerici per ogni riga
  • cut rimuove il numero casuale da ogni riga
  • head emette le prime 10 righe
risposta data 10.07.2015 - 20:55
fonte
8

È possibile installare coreutils con Macports come

sudo port install coreutils

Questo metterà i programmi di utilità di base di GNU in / opt / local / bin con un g preposto

e, g gshuf

    
risposta data 10.07.2015 - 19:55
fonte
3

Un'altra opzione è installare il pacchetto randomize-lines (homebrew), che ha un comando rl che ha funzionalità simili 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
    
risposta data 10.07.2015 - 19:36
fonte

Leggi altre domande sui tag