2014-05-13 51 views
1

为了我自己的理智,当试图将我的文件移动到Unix机器上时,我需要自动将每个输出文件重命名为小写。
目前只是手动重命名他们每个人和Windows的兼容性强制大小写不敏感将为我做这项工作(当Visual Studio重写文件时保持外壳),但我必须为每个文件执行此操作,随着解决方案在文件数量上的增长,这样做相当麻烦。 (如果我敢于忘记一个文件名,则会在底部产生痛苦)在Visual Studio生成事件中将输出文件重命名为小写?

如何通过项目的构建事件自动执行此操作?

+0

'常量字符串str = “我的字符串”; var strLower = str.ToLower();' –

+0

由于您使用的是Visual Studio,因此您还必须有权访问Powershell。使用PS在构建脚本中重命名文件...请勿使用构建事件。 –

+0

@ChaseFlorell不是这些构建事件...? http://puu.sh/8KUqP.png第一条评论中的代码段是什么? – Vercas

回答

1

运行构建事件不是一个好方法。你最好有一个专门的构建脚本来为你完成这项工作。

既然你在Windows上,请检查使用PowerShell来运行你的构建......这里有很多资源。 (亲自使用PSAKE - 发音为sa-kee,如在日本米酒中)

现在,进行更名。以下是可用于将目录中的所有文件重命名为小写字母的代码片段。

重命名,Files.ps1

$dir = "$HOME\Projects\MyProjectDir\FilesToRename" 
dir $dir | Rename-Item -NewName {$_.Name.ToLower()} 

然后从控制台

> .\Rename-Files.ps1 

注:不要忘记elevate powershell permissions

+0

你能详细说一下第一句话吗?这是我第一次听到。另外,我一个人在发展。 – Vercas

+0

构建事件绑定到您的.csproj文件。它们也与你的环境有关。如果您的环境发生变化,您的构建事件很可能会中断。构建脚本可以提高可重用性和可移植性。如果您熟悉构建事件,则可以从构建事件中触发powershell脚本。就我个人而言,我更喜欢这种事情的控制台,但是嘿......拖拉机上悬挂着什么。 –

+0

嘿。我认为使用构建事件会对多个开发人员更友好,因为我可以让Visual Studio提供诸如项目路径或输出路径的数据。我想psake可以做到这一点或相当于什么。我非常喜欢Visual Studio的这种解决方案,所以我会考虑从构建事件中运行PowerShell文件。 – Vercas

相关问题