云网牛站
所在位置:首页 > Linux常用命令大全 > 更多实用命令 > truncate命令

truncate命令

truncate命令用法

truncate 选项... 文件...

将文件缩减或扩展至指定大小。

如果指定文件不存在则创建。

如果指定文件超出指定大小则超出的数据将丢失。

如果指定文件小于指定大小则用0 补足。

长选项必须使用的参数对于短选项时也是必需使用的。

  -c, --no-create       不创建文件
-o, --io-blocks     将SIZE 视为IO 块数而不使用字节数
-r, --reference=文件  使用此文件的大小
-s, --size=大小     使用此大小
--help       显示此帮助信息并退出
--version      显示版本信息并退出


SIZE 可以是一个可选的整数,后面跟着以下单位中的一个:

KB 1000,K 1024,MB 1000*1000,M 1024*1024,还有 G、T、P、E、Z、Y。

指定大小也可使用以下前缀修饰:

"+" 增加,"-" 减少,"<" 至多,">" 至少

"/" 小于等于原尺寸数字的指定数字的最小倍数,"%" 大于等于原尺寸数字的指定数字的最大倍数。
译者注:当输入值为m,参考值为n 时

"/" 运算的数学计算式为 m / n * n;

"%" 运算的数学计算式为( m + n - 1 ) / n * n

请注意-r 和-s 是互斥的选项。

实例

[tank@localhost test1]$ echo -n 1234567 > test  #生成一个test文件

[tank@localhost test1]$ cat test  #查看内容

1234567

[tank@localhost test1]$ truncate -s 4 test  #设置文件大小为4字节

[tank@localhost test1]$ cat test  #查看文件内容

1234

[tank@localhost test1]$

[tank@localhost test1]$ du -ah  #查看文件大小
4.0K    ./test
8.0K    .

[tank@localhost test1]$ truncate -s 2M test  #声明将test文件扩大到2M

[tank@localhost test1]$ du -ah  #大小没变
4.0K    ./test
8.0K    .

[tank@localhost test1]$ ll
总用量 4
-rw-rw-r-- 1 tank tank 2097152 8月  21 10:33 test  #大小变了

相关命令