如何更新文件的版本?

时间:2011-12-09 18:36:25

标签: c++ callback

我有一台服务器,我有时会上传我的软件的新版本。 对于每次上传,我必须增加file.ver中包含的build var,比如#BUILD 345。 好吧,我不是每次手动都这样做,但我更喜欢智能和快速的解决方案,增加每次上传的版本号。

最简单的方法是什么? 在bash中有一个很好的命令来做到这一点? 还是用C / C ++编写的回调方法?

2 个答案:

答案 0 :(得分:1)

您可以使用命令sed替换文件中的字符串。

例如,如果您的文件myfile包含以下内容:

// Some comments
// Version: #VERSION
// ...    

您可以使用以下命令替换版本号:

sed -i 's/#VERSION/123/g' myfile

-i表示内嵌,即修改文件内容。

  

不要将sed的输出重定向回同一文件,如sed ... myfile > myfile中那样,因为您将丢失文件内容。见Redirect output from sed 's/c/d/' myFile to myFile

结果:

// Some comments
// Version: 123
// ...  

如果您使用Ant,这可能很有用:

Use ANT to update build number and inject into source code

另请参阅以下与版本编号(方案)相关的问题:

Bumping version numbers for new releases in associated files (documentation)

答案 1 :(得分:0)

如果您希望这很容易,您应该使用IDE或makefile,否则有时可能会忘记它。

取决于哪个系统操作系统,......您的使用,但大多数IDE都具有此功能 VisualStudio可以执行此操作,也可以在makefile中创建一个小脚本。