빨리 거대한 크기의 파일 만들기

빨리 거대한 파일을 만드는 방법 (작은 재료)입니다.

어려운 명령은 사용하지 않습니다.
Windows, Linux 모두 (거의) 같은 방법으로 갈 수 있습니다.
(수학 자료도 조금 있습니다.)

Windows(DOS창)의 경우



우선 적당한 파일을 메모장(notepad.exe) 등으로 만듭니다.
(1 바이트라도 가능합니다.)

그 파일을 자신에게 덮어쓰기 추가합니다.
type bigfile.txt >> bigfile.txt
이것을 반복하면, 2의 제곱으로 파일 사이즈가 증가합니다.( 1, 2, 4, 8, 16, 32, ・・・ )
2019/08/30  23:50             1,024 bigfile.txt
    :
2019/08/30  23:50             2,048 bigfile.txt
    :
2019/08/30  23:50             4,096 bigfile.txt

수백 MB 정도라면 비교적 빨리 만들 수 있습니다.

IN과 OUT이 같은 파일이기 때문에 신경이 쓰인다 ~ 라고 하는 경우는,
2개의 파일로 교대로 덧쓰기 추가합니다.
type bigfile1.txt >> bigfile2.txttype bigfile2.txt >> bigfile1.txt
이것은 한 줄로 결합됩니다.
type bigfile1.txt >> bigfile2.txt & type bigfile2.txt >> bigfile1.txt
이 경우 피보나치 열에서 파일 크기가 증가합니다.( 1, 1, 2, 3, 5, 8, 13, ・・・ )
2019/08/30  23:58                 8 bigfile1.txt
2019/08/30  23:58                13 bigfile2.txt
    :
2019/08/30  23:58                21 bigfile1.txt
2019/08/30  23:58                34 bigfile2.txt
    :
2019/08/30  23:58                55 bigfile1.txt
2019/08/30  23:58                89 bigfile2.txt

또한 두 파일의 크기 비율은 황금 비율에 가깝습니다.
2019/08/30  23:59           121,393 bigfile1.txt
2019/08/30  23:59           196,418 bigfile2.txt
    :
2019/08/30  23:59           317,811 bigfile1.txt
2019/08/30  23:59           514,229 bigfile2.txt
    :
2019/08/30  23:59           832,040 bigfile1.txt
2019/08/30  23:59         1,346,269 bigfile2.txt

참고
피보나치 수열과 선형 대수

Linux의 경우



Linux(CentOS7)에서는 자신에게 덮어쓰기 추가를 할 수 없는 것 같습니다.
[xxuser@xxhost ~]$ cat bigfile.txt >> bigfile.txt
cat: bigfile.txt: 入力ファイルと出力ファイルが同じです

자세한 내용은 쓰지 않지만 표준 명령으로 자신에게
무리하게 덮어쓰려고 하면 폭주할 수 있습니다.
(테카 폭주했습니다 )

그래서 Linux에서는 2 파일 교대 방식입니다.
cat bigfile1.txt >> bigfile2.txtcat bigfile2.txt >> bigfile1.txt
또는 한 줄로 정리합니다.
cat bigfile1.txt >> bigfile2.txt;cat bigfile2.txt >> bigfile1.txt
하지만 역시 Windows와 마찬가지로 자신에게 덮어쓰기 추가하고 싶다!
그렇다면이 기사의 끝을 참조하십시오.

주의점



위의 명령을 톤을 타고 연타하지 마십시오

PC/서버에는, 파티션의 사이즈나,
메모리 상한이 있습니다. 그리고 I/O wait 라든지.

기계가 무겁지 않을 정도로 조심해서 만들어주세요.

Linux에서 자신에게 덮어쓰기 추가



Linux 장에서는 파일을 스스로 덮어 쓸 수 없습니다.
라고 썼지만 다음과 같은 방법이 있습니다.
tac bigfile.txt >> bigfile.txt
(일반적이지 않다고 생각하므로 베타 버전으로 취급하십시오.)
cat 대신 tac를 사용합니다.
CentOS7에서 시도한 결과 폭주하지 않고 1GB 파일을 만들 수있었습니다.

여러분도 좋으면 검증해 주십시오.

좋은 웹페이지 즐겨찾기