%20%EC%82%AC%EC%9D%B4%EC%9D%98%20%EB%AA%A8%EB%93%A0%20%EC%88%AB%EC%9E%90%EB%A5%BC%20%EC%9E%84%EC%9D%98%EC%9D%98%20%EC%88%9C%EC%84%9C%EB%A1%9C%20%ED%8C%8C%EC%9D%BC%EC%97%90%20%EC%94%81%EB%8B%88%EB%8B%A4..png)
제가 하고 싶은 시뮬레이션을 위해서는 0에서 2^33 사이의 숫자가 포함된 텍스트 파일이 필요합니다. 이는 엄청난 숫자입니다. 나는 다음 명령을 사용했습니다.
seq 0 Number >> OUTPUT FILE
그러나 이것은 매우 느립니다. 파일이 거의 94GB이므로 사용할 수 없습니다 shuf
. 그런 다음 나는타라쇼프작성: Alexandres 이것도 꽤 시간이 걸렸습니다. 원하는 작업을 완료했지만 단일 명령으로 이 작업을 수행하는 더 빠른 방법이 있는지, 이 숫자의 순서를 실제로 무작위로 지정할 수 있는 방법이 있는지 알고 싶습니다.
노트:오랫동안 Linux를 사용해 왔지만 bash 스크립팅에 대한 지식은 매우 제한적입니다. 그러니 초보자도 이해할 수 있는 답변을 해주시기 바랍니다.
답변1
이 경우 가장 좋은 해결책은 shuf
프로그램의 소스 코드를 수정하거나 유사하게 만드는 것입니다.
그런 다음 입력 부분을 버리고 셔플 부분을 사용하여 인덱스를 작성할 수 있습니다. 인덱스를 문자열로 변환하지 않고 줄 바꿈 없이 바이너리 파일에 쓰는 것이 유용할 수 있습니다. 파일이 훨씬 작아서 읽기가 더 빠르기 때문입니다.