사람이 읽을 수있는 임의의 텍스트 데이터를 포함해야하는 텍스트 파일을 만들어야합니다. 나는 우리가 사용할 수 있다는 것을 알고 /dev/urandom
및 /dev/random
임의의 데이터를 얻기 위해. 그러나 인간은 읽을 수 없습니다. 임의의 텍스트 형식이 포함 된 파일을 만들어야합니다. 그렇게 할 방법이 있습니까?
답변
다음과 같은 명령으로 할 수 있습니다
base64 /dev/urandom | head -c 10000000 > file.txt
이름이 file.txt 인 파일의 크기는 10MB입니다.
답변
출력을 얻으십시오 :
tr -dc A-Za-z0-9 </dev/urandom
파일로 파이프하십시오.
head 명령을 -c 또는 -n과 함께 사용 하여 파일 크기를 제한 할 수 있습니다
1kB 파일 a.txt를 생성하는 예 :
tr -dc A-Za-z0-9 </dev/urandom | head -c 1024 > a.txt
답변
base64
단지 출력 영숫자 문자를 더한 것 같습니다 /
및 +
.
나는 더 많은 “발음”문자를 얻는 것을 좋아합니다.
'[:punct:]'
Punctuation characters; in the 'C' locale and ASCII character
encoding, this is ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \
] ^ _ ` { | } ~
따라서 이것을 사용하십시오 :
'[:graph:]'
Graphical characters: '[:alnum:]' and '[:punct:]'
tr
작은 따옴표 ‘backticks`및 backslash \를 제거 하는 데 사용 합니다.
tr -dc '[:graph:]' < /dev/urandom | tr -d \''\\'\` | head -c [size]
승수 접미사를 가질 수 있는 -c
size 옵션 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.
답변
/ dev / urandom이없는 경우 (GitBash 콘솔을 사용하고 있기 때문에) 다음을 사용할 수 있습니다.
openssl rand 33000 -base64 -out dump.txt
답변
실제 사전 단어를 고수하려면 해당 트릭을 사용하십시오.
cat /usr/share/dict/words | sort -R | head -1024 > file.txt
지오메트리를 지정하지 않습니다 (한 줄에 몇 단어, 몇 줄)?