텍스트 파일의 각 행을 무작위로 뒤섞거나 특정 범위의 수를 무작위로 뒤섞고 싶을 때는 shuf 명령을 사용하면 되겠다.
예를 들어 my_file.txt에서 무작위로 5개의 행을 뽑아서 화면에 출력하고 싶다면 아래와 같이 하면 되겠다.
shuf -n 5 my_file.txt
my_file.txt의 전체 행을 무작위로 재배열하고 싶다면, my_file.txt가 몇개의 행으로 이루어져 있는지 찾은 후 이 값을 -n 옵션에 넘겨주자.
shuf -n `cat my_file.txt | wc -l` my_file.txt
출력 결과를 다른 파일로 저장하고 싶다면 redirection을 이용하면 된다.
shuf -n `cat my_file.txt | wc -l` my_file.txt > my_file_shuffled.txt
만약 35이상 45이하의 수를 무작위 순서로 출력하고 싶다면 아래과 같이 -i 옵션을 사용하면 된다.
shuf -i 35-45
사무실에서 커피 내기 사다리 타기 대신으로도 활용할 수 있을 듯;;
예를 들어 my_file.txt에서 무작위로 5개의 행을 뽑아서 화면에 출력하고 싶다면 아래와 같이 하면 되겠다.
shuf -n 5 my_file.txt
my_file.txt의 전체 행을 무작위로 재배열하고 싶다면, my_file.txt가 몇개의 행으로 이루어져 있는지 찾은 후 이 값을 -n 옵션에 넘겨주자.
shuf -n `cat my_file.txt | wc -l` my_file.txt
출력 결과를 다른 파일로 저장하고 싶다면 redirection을 이용하면 된다.
shuf -n `cat my_file.txt | wc -l` my_file.txt > my_file_shuffled.txt
만약 35이상 45이하의 수를 무작위 순서로 출력하고 싶다면 아래과 같이 -i 옵션을 사용하면 된다.
shuf -i 35-45
사무실에서 커피 내기 사다리 타기 대신으로도 활용할 수 있을 듯;;
덧글