Command CVS-如何从命令行获取首次签入日期
我正在编写一个脚本,它将在每个源代码文件的开头添加版权注释Command CVS-如何从命令行获取首次签入日期,command,cvs,Command,Cvs,我正在编写一个脚本,它将在每个源代码文件的开头添加版权注释 此注释需要具有原始签入日期的年份。为了得到这个结果,我需要查询CVS以获得每个文件的原始签入日期,但还没有找到一种简单的方法来实现这一点。有没有一种简单的方法可以获取这些信息?第一个版本是1.1(至少这是默认版本;我不知道是否有方法可以覆盖它) 因此: cvs log -r1.1 filename 应该给您一个日志,只显示初始版本,以及类似的内容: cvs log -r1.1 -N filename | sed -n '/^date:
此注释需要具有原始签入日期的年份。为了得到这个结果,我需要查询CVS以获得每个文件的原始签入日期,但还没有找到一种简单的方法来实现这一点。有没有一种简单的方法可以获取这些信息?第一个版本是
1.1
(至少这是默认版本;我不知道是否有方法可以覆盖它)
因此:
cvs log -r1.1 filename
应该给您一个日志,只显示初始版本,以及类似的内容:
cvs log -r1.1 -N filename | sed -n '/^date: \(....\).*$/s//\1/p'
应该给你初始登记日期的年份。(-N
选项告诉它不要列出标签,这并不重要,但它做的工作稍微少一些。)
日期:
行的确切格式可能因CVS的不同版本而异;你可能需要一种更稳健的方式来寻找年份。脚本可以检查上述命令的结果是否为合理范围内的4位数字,如果不是,则会抱怨。太棒了,谢谢。我会玩它,如果我能让它工作,我会接受你的回答。