操作系统文本文件硬盘存储空间大小与内容的关系

目标 了解测试数据的时候,一个文本文件在磁盘中所占空间的大小。

注: 本文信息统计 基于mac 操作系统。

 

Mac操作系统总结:

空文件 占用0字节

英文字符([email protected]#$%^&*()_+  回车 空格 )普遍占用1个字节

中文普遍占用3个字节

 

CentOS操作系统总结:

空文件 占用1字节  (与mac的区别)

英文字符([email protected]#$%^&*()_+  回车 空格 )普遍占用1个字节

中文普遍占用3个字节

 

英文:

操作系统文本文件硬盘存储空间大小与内容的关系

 

中文:

操作系统文本文件硬盘存储空间大小与内容的关系

 

 

 

 

 

-----------------------------------------------------------以下为测试过程-----------------------------------------------------------

 

1.建立一个没有内容的空文件 

 

------------------------------------------------------------------------------------------------------------------------------------

bogon:data sysadmin$ ls -al

-rw-r--r--@  1 sysadmin  wheel    0  2 12 09:43 empty.txt

 

结论: 建立一个没有内容的空文件,内容显示占用0字节。 文件句柄没在存储的显示之中。

------------------------------------------------------------------------------------------------------------------------------------

 

2.建立一个空的文件夹

 

bogon:data sysadmin$ ls -al 

total 16

drwxr-xr-x   3 sysadmin  wheel    96  2 12 09:58 .

[email protected]  1 sysadmin  wheel  6148  2 12 09:58 .DS_Store


------------------------------------------------------------------------------------------------------------------------------------

文件夹中1个空文件

            bogon:data sysadmin$ ls -al 
            total 16
            drwxr-xr-x   4 sysadmin  wheel   128  2 12 10:00 .
            drwxrwxrwx  18 sysadmin  wheel   576  2 12 09:45 ..
            [email protected]  1 sysadmin  wheel  6148  2 12 09:58 .DS_Store
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件夹中2个空文件
            bogon:data sysadmin$ ls -al 
            total 16
            drwxr-xr-x   5 sysadmin  wheel   160  2 12 10:00 .
            drwxrwxrwx  18 sysadmin  wheel   576  2 12 09:45 ..
            [email protected]  1 sysadmin  wheel  6148  2 12 09:58 .DS_Store
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 2.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件夹中3个空文件
            bogon:data sysadmin$ ls -al 
            total 16
            drwxr-xr-x   6 sysadmin  wheel   192  2 12 10:00 .
            drwxrwxrwx  18 sysadmin  wheel   576  2 12 09:45 ..
            [email protected]  1 sysadmin  wheel  6148  2 12 09:58 .DS_Store
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 2.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 3.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

文件夹中4个空文件
            bogon:data sysadmin$ ls -al 
            total 16
            drwxr-xr-x   7 sysadmin  wheel   224  2 12 10:00 .
            drwxrwxrwx  18 sysadmin  wheel   576  2 12 09:45 ..
            [email protected]  1 sysadmin  wheel  6148  2 12 09:58 .DS_Store
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 2.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 3.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 4.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件夹中5个空文件
            bogon:data sysadmin$ ls -al 
            total 16
            drwxr-xr-x   8 sysadmin  wheel   256  2 12 10:00 .
            drwxrwxrwx  18 sysadmin  wheel   576  2 12 09:45 ..
            [email protected]  1 sysadmin  wheel  6148  2 12 09:58 .DS_Store
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 2.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 3.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 4.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data 5.txt
            [email protected]  1 sysadmin  wheel     0  2 12 09:43 data.txt
      

------------------------------------------------------------------------------------------------------------------------------------

总结:

初始化一个文件夹的时候, 文件夹占用大小为 96 字节      每增加一个文件, 增加32字节大小

 

 

 

 

3.文件中加入数字

 

------------------------------------------------------------------------------------------------------------------------------------

文件中加入1个数字:

[email protected]  1 sysadmin  wheel     1  2 12 10:27 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入2个数字:

[email protected]  1 sysadmin  wheel     2  2 12 10:27 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入3个数字:

[email protected]  1 sysadmin  wheel     3  2 12 10:27 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入6个数字:

[email protected]  1 sysadmin  wheel     6  2 12 10:27 data.txt

------------------------------------------------------------------------------------------------------------------------------------

 

结论:

每一个数字占用1个字节

 

4.文件中加入换行

------------------------------------------------------------------------------------------------------------------------------------

文件中加入1个换行符:

[email protected]  1 sysadmin  wheel     1  2 12 10:31 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

文件中加入2个换行符:

[email protected]  1 sysadmin  wheel     2  2 12 10:31 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

文件中加入3个换行符:

[email protected]  1 sysadmin  wheel    2  2 12 10:31 data.txt

------------------------------------------------------------------------------------------------------------------------------------

 

文件中加入4个换行符:

[email protected]  1 sysadmin  wheel     4  2 12 10:32 data.txt

------------------------------------------------------------------------------------------------------------------------------------

结论:

每增加一个换行符,增加一个字节

 

 

5.文件中加入中文

------------------------------------------------------------------------------------------------------------------------------------

文件中放入1个中文:

 

[email protected]  1 sysadmin  wheel     3  2 12 10:34 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

 

文件中放入2个中文:

 

[email protected]  1 sysadmin  wheel     6  2 12 10:35 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

 

文件中放入4个中文:

 

[email protected]  1 sysadmin  wheel    12  2 12 10:35 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

结论:

每增加一个汉字, 增加3个字节。

 

------------------------------------------------------------------------------------------------------------------------------------

6.文件中加入英文逗号 【,】

------------------------------------------------------------------------------------------------------------------------------------

文件中加入1个英文逗号

 

[email protected]  1 sysadmin  wheel     1  2 12 10:39 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入2个英文逗号

 

[email protected]  1 sysadmin  wheel     2  2 12 10:39 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入4个英文逗号

 

[email protected]  1 sysadmin  wheel     4  2 12 10:39 data.txt

------------------------------------------------------------------------------------------------------------------------------------

 

结论:

每增加一个英文符号, 增加1个字节。

 

 

------------------------------------------------------------------------------------------------------------------------------------

7.文件中加入一个中文逗号   【,】

 

------------------------------------------------------------------------------------------------------------------------------------

文件中放入1个中文逗号:

 

[email protected]  1 sysadmin  wheel     3  2 12 10:34 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

 

文件中放入2个中文逗号:

 

[email protected]  1 sysadmin  wheel     6  2 12 10:35 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

 

文件中放入4个中文逗号:

 

[email protected]  1 sysadmin  wheel    12  2 12 10:35 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

结论:

每增加一个中文逗号, 增加3个字节。

 

8.文件中加入一个英文括号   【  (   】

------------------------------------------------------------------------------------------------------------------------------------

文件中加入1个英文括号

 

[email protected]  1 sysadmin  wheel     1  2 12 10:39 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入2个英文括号

 

[email protected]  1 sysadmin  wheel     2  2 12 10:39 data.txt

------------------------------------------------------------------------------------------------------------------------------------

文件中加入4个英文括号

 

[email protected]  1 sysadmin  wheel     4  2 12 10:39 data.txt

------------------------------------------------------------------------------------------------------------------------------------

 

结论:

每增加一个英文括号, 增加1个字节。

 

9.文件中加入一个中文括号   【 (   】

------------------------------------------------------------------------------------------------------------------------------------

文件中放入1个中文括号:

 

[email protected]  1 sysadmin  wheel     3  2 12 10:34 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

 

文件中放入2个中文括号:

 

[email protected]  1 sysadmin  wheel     6  2 12 10:35 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

 

文件中放入4个中文括号:

 

[email protected]  1 sysadmin  wheel    12  2 12 10:35 data.txt

 

------------------------------------------------------------------------------------------------------------------------------------

结论:

每增加一个中文括号, 增加3个字节。

 

MAC大总结:

英文字符([email protected]#$%^&*()_+  回车 空格 )普遍占用1个字节

中文普遍占用3个字节

 

 

验证1. :

一行3个中文 , 100行占用空间大小:

计算步骤:

     1. 一个中文3个字节, 一行三个中文, 共9个字节, 一百行的话, 占用900个字节。

     2. 每行有一个回车, 一个回车占用了1个字节, 一百行的话,占用99个字节。

     3. 步骤1,步骤2数值相加:  900+99 = 999 字节

 

验证:

[email protected]  1 sysadmin  wheel  1000  2 12 10:50 data.txt

 

 

 

验证2. :

 

多少个中文一行能占用1k的大小。

1024 / 3 = 341 余 1个字符。 说以 341个中文+1个换行符就好了

验证:

[email protected]  1 sysadmin  wheel  1024  2 12 12:12 data.txt

 

验证3. : 

 

1M大小的文件,需要多少行?  多少个中文?   (中文一行占用1k大小)

1M = 1024kb = 1048576 bytes

 

也就是说1025行正好占用1M空间 ( 1024行 + 一个换行符 共1025行 )

每行341个中文,1024行 =  349184 

理论值: 34 9525 余 1  将近35万个汉字。

 

验证:

[email protected]  1 sysadmin  wheel  1048576  2 12 12:18 data.txt

 

验证三:

          每个节点每分钟1Kb数据,100万个节点,一天 产生多少数据

 

每分钟1Kb数据, 100万个节点, 一分钟 100万Kb 数据。 

一天24小时 ,每小时60分钟, 那么一天是1440分钟

1440 * 100万Kb = 144000 万kb = 1440000000 kb = 1406250 MB = 1373.29 G = 1.34TB

 

记录一个数值:

1G ≈ 104.8万kb

1G ≈ 10.7亿 Bytes

 

操作系统文本文件硬盘存储空间大小与内容的关系