Odpowiedzi:
Jeśli chcesz, możesz zainstalować GNU sort
poprzez pakiet coreutils GNU przez Homebrew , który jest menedżerem pakietów dla OS X.
Uruchomienie tego spowoduje zainstalowanie Homebrew.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Następnie postępuj zgodnie z instrukcjami instalacji. Po zainstalowaniu Homebrew uruchom
brew install coreutils
Spowoduje to zainstalowanie GNU sort as gsort
, dzięki czemu będziesz mógł używać go jak sort
na dowolnym systemie GNU Linux.
Alternatywnie, spójrz na te pytania dotyczące przepełnienia stosu, które wspominają kilka metod:
Jak mogę randomizować linie w pliku za pomocą standardowych narzędzi w systemie Redhat Linux
Jak mogę przetasować linie pliku tekstowego w linii poleceń Uniksa?
Lub spójrz na tę stronę commandlinefu.com:
Użycie shuf
lub sort
z coreutils
pakietu, ale potem masz, aby dodać /usr/local/bin
do swojej PATH
w ~/.bashrc
pliku, na przykład:
export PATH=/usr/local/sbin:/usr/local/bin:$PATH
Alternatywnie możesz spróbować ex
:
ex -s +"%s/^/\=reltimestr(reltime())[-2:].' '" +"sort n" +"%s/^\S* //" +%p -cq! /dev/stdin
Źródło: Jak przetasować listę w vimie?
Możesz zainstalować rl
polecenie za pomocą homebrew ( brew install randomize-lines
).
Jest dość szybki i ma opcje ograniczania liczby zwracanych elementów, a także określania separatora (na przykład spacja zamiast przesunięcia wiersza).
(Zobacz także https://stackoverflow.com/a/42056195/43615 .)