OSX에서 gnu`sort -R`과 동일합니까? 화합니다. OSX sort에는이 확장이

GNU sort텍스트 유틸리티는 비표준 -R옵션을 사용하여 입력 라인을 무작위 화합니다.

OSX sort에는이 확장이 없습니다. 다른 텍스트 필터에서 유사한 기능을 사용할 수 있습니까?



답변

원하는 경우 OS X 용 패키지 관리자 인 Homebrew를sort 통해 GNU의 coreutils 패키지를 통해 GNU를 설치할 수 있습니다.

이것을 실행하면 Homebrew가 설치됩니다.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

그런 다음 설치 지침을 따르십시오. Homebrew가 설치되면 다음을 실행하십시오.

brew install coreutils

이렇게하면 GNU sort가로 설치 gsort되므로 sort모든 GNU Linux 에서처럼 사용할 수 있습니다 .


또는 다음과 같은 몇 가지 방법을 언급하는 다음 스택 오버플로 질문을 살펴보십시오.

Redhat Linux의 표준 도구를 사용하여 파일에서 행을 무작위로 추출하는 방법 Unix 명령 행에서 텍스트 파일의 행 을 섞는
방법은 무엇입니까?

또는 다음 commandlinefu.com 페이지를보십시오.

라인 무작위 화 (| sort의 반대)


답변

OS X에서, 당신은 자작 설치하지 않을 경우 (하지만 당신은 정말해야), 당신은 사용할 수 있습니다 perl또는 ruby:

perl -MList::Util -e 'print List::Util::shuffle <>'

또는

ruby -e 'puts STDIN.readlines.shuffle'


답변

사용 shuf또는 sort에서 coreutils패키지,하지만 당신은 추가했습니다 /usr/local/bin당신에 PATH에에 ~/.bashrc예를 들어, 파일 :

export PATH=/usr/local/sbin:/usr/local/bin:$PATH

또는 시도해 볼 수 있습니다 ex:

ex -s +"%s/^/\=reltimestr(reltime())[-2:].' '" +"sort n" +"%s/^\S* //" +%p -cq! /dev/stdin

출처 : vim에서 목록을 섞는 방법?


답변

rlhomebrew ( brew install randomize-lines) 를 통해 명령을 설치할 수 있습니다.

매우 빠르며 반환 항목 수를 제한하고 구분 기호 (예 : 줄 바꿈 대신 공백)를 지정하는 옵션이 있습니다.

https://stackoverflow.com/a/42056195/43615참조하십시오 .


답변