【Linux】文件IO基础

man手册

  • 通过man手册可以获取详细的Linux操作命令共有8章,查询使用man ls即可查询ls的相应命令,也可以使用相应的章节man 2 open查询第二章的open如何使用。

常用文件IO函数

功能函数描述实例
打开文件int open(const char *pathname, int flags);打开一个文件,返回文件描述符。-1则打开失败,可以使用perror(const char *)来输出错误。pathname是文件路径,flags指定打开模式(如O_RDONLY只读、O_WRONLY只写、O_RDWR读写、O_CREAT文件不存在则创建`也可以使用按位或同时使用不同的权限。int copy=open("a.text",O_WRONLY | O_CREAT,0664);//只写若不存在则创建,若创建则文件的rwx权限为664,创建必须加权限。
后期使用chmod 664 a.text改变权限也可
关闭文件int close(int fd);关闭一个文件描述符close(copy);
读文件ssize_t read(int fd, void *buf, size_t count);从文件描述符fd指向的文件中读取最多count字节到缓冲区buf中。返回值>0则为实际读取到的字节数,=0表示已经读完,-1则表示失败read(fd,buff,sizeof(buff))
写文件ssize_t write(int fd, const void *buf, size_t count);write:将缓冲区buf中的最多count字节数据写入文件描述符fd指向的文件。成功返回写入的字节数,失败返回-1write(copy,buff,len);
复制文件描述符、设置/获取文件的状态int fcntl(int fd, int cmd, long arg); fd:要操作的文件描述符
cmd:指定要执行的操作类型
F_DUPFD:复制文件描述符。
F_GETFD:获取文件描述符的标志。
F_SETFD:设置文件描述符的标志,常用于设置close-on-exec标志。
F_GETFL:获取文件状态标志,如文件是否为非阻塞模式等。
F_SETFL:设置文件状态标志。
F_GETLK, F_SETLK, F_SETLKW:与文件锁操作相关,分别用于获取、设置或设置带有阻塞的文件锁。
fcntl(fd, F_SETFL, fcntl(fd,F_GETFL,0)| O_NONBLOCK) //查询当前文件描述符的状态标志,然后在其基础上增加非阻塞标志,并最终更新文件描述符的属性,使其变为非阻塞模式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值