리눅스에는 프로그램이 얼마나 많은 데이터를 생산할 수 있는지 계산할 수있는 프로그램이 있습니까?
예를 들어, MySQL 데이터베이스를 백업하고 싶다면 보통
mysqldump > dumpfile.sql
대신에 리디렉션하고 /dev/null
싶지만 사용 된 디스크 공간의 양을 계산하고 싶습니다.
mysqldump | fancy_space_calc_program
산출:
123456789 Bytes would have been used
MySQL 백업은 단지 예일뿐입니다. 사전에 크기를 예측할 수있는 방법을 잘 알고 있으므로 이에 대한 의견은 없습니다.
1
나는 당신이 정말로 하나를 만들 수 있다고 생각하지도 않습니다. 어떤 경우에는 어떤 앱이 어떤 서버를 호출하고 그 서버에서 데이터를 다운로드하는지 추정 할 수있는 방법 때문에 외국 앱에서는 그러한 것들을 추정 할 수 없기 때문에 특정한 경우에는 그렇습니다. 따라서 이것은 응용 프로그램마다-MYSQL에 대해 이미 알고 있다고 설명 할 때-거기에 대한 설명은 없지만 다른 응용 프로그램은 응용 프로그램마다 올바르게 예측할 수있는 일반적인 도구는 없습니다.
—
Drako
견적을 내리려면 실제로 프로그램을 실행하고 안전한 곳으로 보내지는 동안 출력을 관찰해야한다는 것을 알고 싶습니다. 프로그램이 다른 것에 돌이킬 수없는 영향을 미치면 의도하지 않은 부작용없이 한 번만 실행할 수 있으면 불가능합니다. 다른 문제는 프로그램이 변경 입력에서 출력을 파생하면 다음 실행이 다른 (다른 크기) 출력 파일을 생성한다는 것입니다. 마지막 : 디스크 공간 <> (바이트). 그리고 다양한 파일 시스템은 부기에 대한 오버 헤드가 다릅니다.
—
Tonny
네, 잘 알고 있습니다. 여전히 나에게 충분합니다.
—
fancyPants 2016 년
@Drako 프로그램의 텍스트 출력을 측정하는 일반적인 방법을 사용할 수 있습니다. 앱마다있을 필요는 없습니다 (예 : 허용 된 답변 참조). 후속 실행에서 텍스트 출력이 안정적으로 동일한 지 여부는 앱마다 다르지만 일반적인 방식으로 출력을 측정 할 수는 없습니다. 아마도 OP와 출력을 측정하려는 다른 사람은 데이터가 주어진 응용 프로그램에 의미가있는 경우에만 그렇게 할 것입니다.
—
존 벤틀리
@ JonBentley 나는 당신이 그것을 가질 수 없다고 말하지 않았고, 더 자세히 읽었습니다 : "일반적인 예측은 정확하거나 가깝지 않을 것입니다 :)"그리고 이제 실행 후 내 앱이 플러그인 자체의 업데이트를 확인할 것이라고 상상해보십시오 등 i-net에서 x 량의 데이터를 다운로드하여 hdd에 저장합니다. 내 앱에 대해 아무것도 모르는 일반 도구를 사용하여 사전에 정확하게 측정하는 방법, 실행 후 얼마나 많은 스토리지가 필요합니까? 여전히 당신은 받아 들여진 대답으로 최선의 추측을 할 수 있으며 대부분의 경우 꽤 정확합니다.
—
Drako