Linux系统编程13-truncate.md
在Linux中,truncate
函数可以将一个文件截断或扩展为指定的大小。具体来说,它可以根据文件描述符或文件名截断或扩展一个文件,将其大小设置为指定的字节数。如果文件原本比指定的大小小,那么它将被扩展,如果文件比指定的大小大,那么它将被截断。
#include <unistd.h>
#include <sys/types.h>
int truncate(const char *path, off_t length);
int ftruncate(int fd, off_t length);
作用: 缩减或扩展文件尺寸至指定的大小, 长的截断,短的扩展
参数:
- path: 需要修改的文件的路径
- length: 需要最终文件变成的大小
- fd:文件描述符,需要操作的文件的文件描述符。
返回: 0 成功, -1 失败
实例:改变a.txt文件大小为5b
truncate.c
#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
int main(int argc, char const *argv[])
{
int ret = truncate("a.txt", 5);
if (ret == -1)
{
perror("truncate err");
return -1;
}
return 0;
}