0

我一直在尝试使用 SCons 的 env.Command 函数中的 sed shell 命令对 .properties 文件中的 .txt 文件名进行字符串替换。我目前无法理解如何在此文件中为这些文件名附加时间戳。

我天真地尝试在构建步骤中使用 bash 变量,如下所示:

 env.Command('foo.out', 'foo.in', "dateVar=$(date +%F-%k-%M); sed -i \"s/\.txt/\.txt?v=$dateVar/g\" example.properties");

...但这只会导致失败,因为 SCons 试图解析任何带有美元符号的东西。有谁知道我怎样才能实现这个附加?

4

1 回答 1

1

$通过将其编写为保护SCons 解析器$$

env.Command('foo.out', 'foo.in',
            'dateVar=$$(date +%F-%k-%M); '
            'sed -i "s/\.txt/\.txt?v=$$dateVar/g" example.properties');
于 2012-09-14T00:03:34.197 回答