Linux的文件操作API涉及创建,打开,读取,写入和关闭文件

电脑杂谈  发布时间:2020-03-31 18:15:56  来源:网络整理

fly类型文件怎么打开_bin类型文件怎么打开_fly类型文件怎么打开

其他人可以读取,写入和执行

S_ISUID

设置用户执行ID

S_ISGID

fly类型文件怎么打开_bin类型文件怎么打开_fly类型文件怎么打开

设置组的执行ID

除了使用上述宏生成“或”逻辑外,我们还可以使用数字表示自己. Linux总共使用5个数字来表示文件的各种权限: 第一个数字表示已设置的用户ID;第二个数字表示已设置的用户ID. 第二位指示设置的组ID;第三位表示用户自己的权限位;第四位表示该组的许可;最后一位表示他人的权限. 每个数字可以取1(执行许可),2(写许可),4(读许可),0(无)或这些值的总和. 例如,要创建用户可读,可写且可执行的文件,但该组没有权限,其他人可以读取和执行该文件,并将用户ID位置1. 然后,我们应该使用的模式是1(设置用户ID),0(不设置组ID),7(1 + 2 + 4,读,写,执行),0(无权限),5(1 + 4) ,读取并执行),即10705:

打开(“测试”,O_CREAT,10705);

以上陈述等同于:

bin类型文件怎么打开_fly类型文件怎么打开_fly类型文件怎么打开

打开(“测试”,O_CREAT,S_IRWXU | S_IROTH | S_IXOTH | S_ISUID);

如果文件成功打开fly类型文件怎么打开,则打开功能将返回文件描述符. 可以通过对该文件描述符进行操作来实现对该文件的所有后续操作.

读写

打开文件后,我们可以读写文件. 在Linux中提供文件读写功能的系统调用是读写功能:

bin类型文件怎么打开_fly类型文件怎么打开_fly类型文件怎么打开

int读取(int fdfly类型文件怎么打开,const void * buf,size_t长度);

int写(int fd,const void * buf,size_t长度);

参数buf是指向缓冲区的指针,而length是缓冲区的大小(以字节为单位). 函数read()从文件描述符fd指定的文件中将长度字节读取到buf指向的缓冲区中,返回值是实际读取的字节数. 写函数将把buf指向的缓冲区中的长度字节写入文件描述符fd所指向的文件中,返回值是实际写入的字节数.

标有O_CREAT的Open实际上实现了文件创建功能. 因此,以下函数等效于creat()函数:

fly类型文件怎么打开_fly类型文件怎么打开_bin类型文件怎么打开

int打开(路径名,O_CREAT | O_WRONLY | O_TRUNC,模式);

定位

对于随机文件,我们可以在随机位置进行读写,并使用以下功能进行定位:

int lseek(int fd,offset_t偏移量,int何时);

lseek()将文件读写指针相对于wherece移动偏移字节. 操作成功后,将返回文件指针相对于文件头的位置. 参数wherece可以使用以下值:

SEEK_SET: 相对文件开头


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/bofangqi/article-159143-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...