SCons 从 Action/Command 中删除 space
SCons removes space from Action/Command
使用以下命令:
env.Command('XYZ', 'somefile', 'echo "Hello, how are you" > $TARGET')
SCons 压缩 space 并运行:
echo "Hello, how are you" > XYZ
并且:
$ cat XYZ
Hello, how are you
为什么会这样,我可以阻止它吗?
这是一个已知问题,记录在错误 #1123 and #2018 中。
在您只想创建文本文件的情况下,有一个简单的解决方法,它具有跨平台工作的额外好处:使用 Textfile Builder...
env = Environment(tools=['default', 'textfile'])
env.Textfile('XYZ','Hello, how are you')
这将创建具有 *.txt
扩展名的目标文件,因为这是生成器的默认设置。如果不喜欢,可以覆盖变量$TEXTFILESUFFIX
。在环境中全局,或在本地进行单个构建器调用,如:
env.Textfile('XYZ','Hello, how are you', TEXTFILESUFFIX='')
使用以下命令:
env.Command('XYZ', 'somefile', 'echo "Hello, how are you" > $TARGET')
SCons 压缩 space 并运行:
echo "Hello, how are you" > XYZ
并且:
$ cat XYZ
Hello, how are you
为什么会这样,我可以阻止它吗?
这是一个已知问题,记录在错误 #1123 and #2018 中。
在您只想创建文本文件的情况下,有一个简单的解决方法,它具有跨平台工作的额外好处:使用 Textfile Builder...
env = Environment(tools=['default', 'textfile'])
env.Textfile('XYZ','Hello, how are you')
这将创建具有 *.txt
扩展名的目标文件,因为这是生成器的默认设置。如果不喜欢,可以覆盖变量$TEXTFILESUFFIX
。在环境中全局,或在本地进行单个构建器调用,如:
env.Textfile('XYZ','Hello, how are you', TEXTFILESUFFIX='')