%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EB%A7%8C%EB%93%9C%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
사람이 읽을 수 있는 임의의 텍스트 데이터를 포함하는 텍스트 파일을 만들어야 합니다. 나는 우리가 무작위 데이터를 얻기 위해 사용할 수 있다는 /dev/urandom
것을 알고 있습니다. /dev/random
하지만 사람은 읽을 수 없습니다. 임의의 텍스트 형식이 포함된 파일을 만들어야 합니다. 그렇게 할 수 있는 방법이 있나요?
답변1
다음 명령으로 할 수 있습니다
base64 /dev/urandom | head -c 10000000 > file.txt
이름이 file.txt 크기인 10MB의 파일을 생성합니다.
답변2
다음의 출력을 얻습니다.
tr -dc A-Za-z0-9 </dev/urandom
그리고 파일로 파이프하세요.
당신이 사용할 수있는머리-c 또는 -n을 사용하여 파일 크기를 제한하는 명령
1kB 파일 a.txt를 생성하는 예:
tr -dc A-Za-z0-9 </dev/urandom | head -c 1024 > a.txt
답변3
패키지 wamerican
는 아래에서 사용 가능한 단어 사전을 제공합니다 /usr/share/dict/words
.
다음 트릭을 사용하여 이를 사용할 수 있습니다.
cat /usr/share/dict/words | sort -R | head -1024 > file.txt
기하학을 지정하지 않았다는 점에 유의하십시오(한 줄에 몇 개의 단어가 있는지, 몇 줄이 있습니까?).
답변4
base64
영숫자 문자 플러스 /
및 만 출력하는 것 같습니다 +
.
나는 더 많은 "구두점" 문자를 얻기 위해 이것을 좋아합니다.
'[:punct:]'
Punctuation characters; in the 'C' locale and ASCII character
encoding, this is ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \
] ^ _ ` { | } ~
따라서 다음을 사용하십시오.
'[:graph:]'
Graphical characters: '[:alnum:]' and '[:punct:]'
tr
작은따옴표 ' 백틱 ` 및 백슬래시 \를 제거하는 데 사용합니다 .
tr -dc '[:graph:]' < /dev/urandom | tr -d \''\\'\` | head -c [size]
크기 -c
옵션에는 head
승수 접미사를 가질 수 있습니다: b 512, kB 1000, K 1024, MB 1000*1000, M 1024*1024, GB 1000*1000*1000, G 1024*1024*1024 등 T, P , E, Z, Y.