• Cmake常用命令(二)


    本文主要介绍File关键字,它是文件系统相关的操作的入口

    读文件

    命令

    格式

    解释

    示例

    READ

    file(READ <filename> <variable>

         [OFFSET <offset>] [LIMIT <max-in>] [HEX])

    读取文件名为 <filename> 的文件并将其内容存储到 <variable> 变量中。可选的参数: <offset> 指定起始读取位置,<max-in> 最多读取字节数,HEX 将数据转为十六进制(处理二进制数据十分有用)

    STRINGS

    file(STRINGS <filename> <variable> [<options>...])

    从 <filename> 文件解析一串 ASCII 字符串并存储到 <variable> 中。文件中的二进制文件将被忽略。回车字符(\r,CR)将被忽略。

    file(STRINGS myfile.txt myfile)

    命令

    格式

    解释

    示例

    WRITE

    file(WRITE <filename> <content>...)

    写入 <content> 到 <filename> 文件中。如果文件不存在则创建。如果文件已存在,WRITE 模式将覆盖内容

    APPEND

    file(APPEND <filename> <content>...)

    如果为 APPEND 模式将追加内容。任何在 <filename> 文件路径中的不存在文件夹都将被创建。

    文件系统

    命令

    格式

    解释

    示例

    GLOB

    file(GLOB <variable>

         [LIST_DIRECTORIES true|false] [RELATIVE <path>] [CONFIGURE_DEPENDS]

         [<globbing-expressions>...])

    file(GLOB_RECURSE <variable> [FOLLOW_SYMLINKS]

         [LIST_DIRECTORIES true|false] [RELATIVE <path>] [CONFIGURE_DEPENDS]

         [<globbing-expressions>...])

    产生一个匹配 <globbing-expressions> 的文件列表并将它存储到变量 <variable> 中

    *.cxx      - 匹配所有后缀名为 cxx 的文件

    *.vt?      - 匹配所有后缀名为 vta,...,vtz 的文件

    f[3-5].txt - 匹配 f3.txt, f4.txt, f5.txt 文件

    GLOB_RECURSE

    同上

    递归所有匹配文件夹的子文件夹和匹配的文件

    /dir/*.py  - match all python files in /dir and subdirectories

    RENAME

    file(RENAME <oldname> <newname>)

    从 <oldname> 移动文件或文件夹到 <newname> ,自动替换目标路径

    REMOVE/REMOVE_RECURSE

    file(REMOVE [<files>...])

    file(REMOVE_RECURSE [<files>...])

    删除文件,REMOVE_RECURSE 模式将删除给定文件和文件夹(递归)

    MAKE_DIRECTORY

    file(MAKE_DIRECTORY [<directories>...])

    创建给定文件夹,并根据需求创建其父文件夹

    COPY/INSTALL

    file(<COPY|INSTALL> <files>... DESTINATION <dir>

         [FILE_PERMISSIONS <permissions>...]

         [DIRECTORY_PERMISSIONS <permissions>...]

         [NO_SOURCE_PERMISSIONS] [USE_SOURCE_PERMISSIONS]

         [FILES_MATCHING]

         [[PATTERN <pattern> | REGEX <regex>]

          [EXCLUDE] [PERMISSIONS <permissions>...]] [...])

    复制文件、路径和符号链接到目标路径

    文件路径转换

    命令

    格式

    解释

    示例

    RELATIVE_PATH

    file(RELATIVE_PATH <variable> <director> <file>)

    计算文件 <file> 相对<directory> 的相对路径并存储到 <viriable> 变量中

    文件传输

    命令

    格式

    解释

    示例

    DOWNLOAD

    file(DOWNLOAD <url> <file> [<options>...])

    <DOWNLOAD> 模式将下载指定的 <url> 到本地 <file>

    UPLOAD

    file(UPLOAD   <file> <url> [<options>...])

    UPLOAD 模式将上传本地 <file> 到给定的 <url>。

    文件锁

    命令

    格式

    解释

    示例

    LOCK

    file(LOCK <path> [DIRECTORY] [RELEASE]

         [GUARD <FUNCTION|FILE|PROCESS>]

         [RESULT_VARIABLE <variable>]

         [TIMEOUT <seconds>])

    锁定一个 <path> 指定的文件

  • 相关阅读:
    YOLOv5 backbone
    优先队列题目:多次求和构造目标数组
    适合初学者的CNN数字图像识别项目:Digit Recognizer with CNN for beginner
    NTP时间同步
    Avue和Element-UI动态三级表头
    如何用Python快速生成SQL语句?
    Docker容器的数据卷
    聊聊SQL注入
    3G网络关闭,4G还会远吗?
    乘积数量(冬季每日一题 14)
  • 原文地址:https://blog.csdn.net/zhanglehes/article/details/125633704