电商网站怎么做优化,推广接单网,支付网站建设费的会计分录,小程序开发制作服务商一. 简介
前面几篇文章学习了 cmake的文件操作#xff0c;写文件#xff0c;读文件。文章如下#xff1a;
cmake进阶#xff1a;文件操作之写文件-CSDN博客
cmake进阶#xff1a;文件操作之读文件-CSDN博客
本文继续学习文件操作。主要学习 文件重命名#xff0c;删…一. 简介
前面几篇文章学习了 cmake的文件操作写文件读文件。文章如下
cmake进阶文件操作之写文件-CSDN博客
cmake进阶文件操作之读文件-CSDN博客
本文继续学习文件操作。主要学习 文件重命名删除文件以及获取文件的 Hash值。 二. cmake进阶文件操作
1. 文件重命名 使用 file() 命令可以对文件进行重命名操作命令格式如下 file(RENAME oldname newname) oldname 指的是原文件 newname 指的是重命名后的新文件。 文件既可以使用绝对路径指定也可以使用相对路径指定相对路径被解释为相对于当前源码路径。 前提是在 工程根目录下存在 input.txt文件。 准备一个工程在顶层 CMakeLists.txt文件中添加如下代码 # 文件重命名
file(RENAME ${PROJECT_SOURCE_DIR}/input.txt ${PROJECT_SOURCE_DIR}/output.txt) 进入 build目录下 运行 cmake .. 命令后打印信息如下 可以看到文件名已经更改。 2. 删除文件 使用 file()命令可以删除文件命令格式如下
file(REMOVE [files...])
file(REMOVE_RECURSE [files...]) REMOVE 选项将删除给定的文件但不可以删除目录 REMOVE_RECURSE 选项将删除给定的文件或目录、以及非空目录。 指定文件或目录既可以使用绝对路径、也可以使用相对路径相对路径被解释为 相对于当前源码路径。 向顶层 CMakeLists.txt文件中添加如下代码
# file 删除文件或目录测试
file(REMOVE ${PROJECT_SOURCE_DIR}/out1.txt)
file(REMOVE_RECURSE ${PROJECT_SOURCE_DIR}/out2.txt ${PROJECT_SOURCE_DIR}/empty-dir
${PROJECT_SOURCE_DIR}/Non_empty-dir) out1.txt 和 out2.txt 是普通文件 empty-dir 是一个空目录而 Non_empty-dir 是一个非空目录如下所示 进入到 build 目录下执行 cmake .. 命令 执行完 cmake 命令之后这些文件以及文件夹都被删除了。 3. 计算文件的 hash 值 file()命令可以计算指定文件内容的加密散列hash 值并将其存储在变量中。命令格式如下所示
file(MD5|SHA1|SHA224|SHA256|SHA384|SHA512 filename variable) MD5|SHA1|SHA224|SHA256|SHA384|SHA512 表示不同的计算 hash 的算法必须要指定其中之一。 filename 指定文件可使用绝对路径、也可使用相对路径相对路径被解释为相对于当前源码的 BINARY_DIR 将计算结果存储在 variable 变量中。 向顶层 CMakeLists.txt文件中添加如下代码
# 计算文件的 hash 值
file(SHA256 ${PROJECT_SOURCE_DIR}/input.txt out_var)
message(${out_var}) 这里我们还是用上面创建的 input.txt 文件使用 SHA256 算法进行计算结果如下 关于 file() 命令就给大家介绍这么多了其实 file() 命令的功能很强大除了以上给大家介绍的基本功能外还支持文件下载、文件锁等功能大家有兴趣可以自己去了解。