如何使用通配符在CMake中复制和重命名多个文件?

时间:2019-06-25 15:50:08

标签: cmake

我有一个CMake项目,我需要将文件从一个文件夹复制到另一个文件夹,并使用以下模式进行其他重命名:

“ xy-1”将是“ abcd1”, “ xy-2”将是“ abcd2”, ..., “ xy-123”将是“ abcd123”

目前,我正在尝试使用add_custom_command()进行操作,通常它可用于更简单的模式,例如

“ xy-1”将是“ abc1”, “ xy-2”将是“ abc2”, ..., “ xy-123”将为“ abc123”,

我正在用

COMMAND copy "${path_to_source_folder}xy-*.txt" "${path_to_destination_folder}abc*.txt"

在工作模式中,源名称和目标名称中星号前的字符数相同。

但是在不起作用的模式中,星号前的源名称中包含3个字符,而目标名称中包含4个字符:

COMMAND copy "${path_to_source_folder}xy-*.txt" "${path_to_destination_folder}abcd*.txt"

这不起作用。 cmake不会出错,但是不会复制所有文件(仅前99个文件),并且名称创建不正确。

一种快速的解决方法是显式列出所有(400多个)文件,但我想避免这种情况;-)

如何使用add_custom_command()执行此操作,或者如果无法执行此操作,则如何以其他方式执行此操作?

非常感谢您的帮助!

干杯丹尼尔

更新: 感谢您的评论提示!我正在Windows 10上运行,并使用Powershell运行cmake。

0 个答案:

没有答案