首页 > 其他分享 >open()文件导致文件内容被随机性地清空

open()文件导致文件内容被随机性地清空

时间:2023-09-25 09:57:03浏览次数:25  
标签:标志 文件 参数 RDONLY 清空 open

open()使用错误:
源码  fd = open("/extdir/run_mode", "r");
其中,"r" 不是open的参数 ,正确参数应为O_RDONLY。

详解:

1、open()是系统函数,它的参数应为O_RDONLY,"r" 是库函数fopen()的参数
2、"r" 按照整型解释的时候是一个随机数(实际上是字符串"r"的地址)
3、open()有一个操作标志O_TRUNC(0x0200),若文件存在且以可写的方式打开时,此标志会将文件长度清为0,文件的内容也就会消失了。
open()的操作标志实际上就是一个又一个的bit位,(1)中的随机数完全有可能将O_TRUNC和可写标志同时打开,从而清空run_mode的文件内容。

标签:标志,文件,参数,RDONLY,清空,open
From: https://www.cnblogs.com/fallenmoon/p/17727223.html

相关文章

  • 从文件路径中提取文件名的shell操作
    Sundray-SW/extdir#sfp=/extdir/debug_bin/ops-devsdSundray-SW/extdir#echo${sfp##*/}ops-devsdSundray-SW/extdir#basename${sfp}ops-devsdSundray-SW/extdir#dirname${sfp}/extdir/debug_bin ${}的一些特殊功能:file=/dir1/dir2/dir3/my.file.txt${file#*/}:拿......
  • 文件上传 切片与断点续传
    主要讲前端,后端使用node。会写一下后端的处理1.单个文件上传请求头为multipart/form-data数据为from-data格式letformData=newFormData();formData.append('file',_file);formData.append('filename',_file.name);然后使用post直接给后端。后端直接存......
  • SpringBoot发送带文件的Post请求
    使用httpclient发送一个带文件参数的Post请求Pom依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.apac......
  • Linux第二章文件管理 2023.9.24
    计算机科学与技术1班 学号:20218503姓名:曾庆玲一目录操作首先:cd/cd//切换到根目录1、创建目录mkdirswxy2、查看目录(1)pwd 显示当前所在目录(2)pwd-p显示实际工作目录(3)ls-a查看隐藏的目录与文件(4)ls-l 查看目录与文件的属性3、切换目录(1)cd不加任何路......
  • Linux内核Makefile系统文件详解
    MakefileLinux内核的Makefile系统非常复杂,因为内核包含了许多不同的配置选项、架构和模块。以下是Linux内核Makefile系统中一些重要的文件和目录,以及它的作用。顶层Makefile(Makefile)顶层Makefile是整个内核编译过程的入口点它包含了全局选置选项,如目标体系结构、编译......
  • python教程:调用svn status命令对提交的文件进行add状态过滤(只保存新增加的文件)
    需求说明编写一段python程序,用于对svnadd状态的文件进行过滤,并用列表对这些文件进行保存。代码实现以下是一个示例的Python程序,用于对SVN的svnstatus命令中状态为“A”(新增)的文件进行过滤,并将它们存储在一个列表中:importsubprocessdefget_added_files():added_fi......
  • linux教程:删除当前目录非.zip文件及目录(find和rm两种方式)
    第一种方式要删除当前目录中除了.zip文件以外的所有文件和目录,可以使用以下命令:rm-fr!(*.zip)这个命令使用了通配符!(*.zip)来匹配除了.zip文件以外的所有文件和目录,并使用rm-fr来递归删除它们。请确保在执行此命令之前,你已经切换到了正确的目录。第二种方式使用find结合rm来删......
  • ansible教程:使用win_shell和win_copy从 HTTP 文件服务器下载文件并将其复制到目标位置
    with_fileglob参数无法直接指定HTTP文件服务器上的文件路径。它是用于在本地文件系统中进行文件的模式匹配,并将匹配的文件作为迭代项来执行任务。如果你需要从HTTP文件服务器上下载文件并将其复制到目标位置,你可以使用适当的工具或库来实现这个任务。下面是一个示例,使用curl......
  • MySQL的配置文件中关于basedir和datadir的说明
    在MySQL的配置文件my.ini或者my.cnf文件中1、basedir参数原文说明为:Pathtoinstallationdirectory.Allpathsareusuallyresolvedrelativetothis.解释:该参数指定了安装MySQL的安装路径,填写全路径可以解决相对路径所造成的问题。例如:basedir="E:/dev/MySQL/MySQLS......
  • C# 操作INI文件
    C#读写INI文件.NET程序中,可以作为配置文件使用的格式又很多,INI文件在某些场景应用较为广泛,如串口参数、一些工作站本地参数等等,INI文件主要用途为读取指定节点的配置内容,以及修改指定节点。一下文章主要描述在程序对INI文件的操作。INI文件介绍INI文件ini文件本质上就是一......