Первая строка вхождения «foo» будет заменена на «bar». И вы можете использовать вторую строку для проверки.
grep -rl 'foo' . | xargs sed -i 's/foo/bar/g'
grep 'foo' -r * | awk -F: {'print $1'} | sort -n | uniq -c
Вы можете исключить проекты на уровне решения для конкретной конфигурации build с помощью диалога Configuration Manager в Visual Studio:
[/g3]
Затем вы можете просто вызвать msbuild
в файле решения , указав конфигурацию сборки для использования:
msbuild /property:Configuration=Release MySolution.sln
Решение, предлагаемое Enrico, является самым универсальным решением, которое будет работать всегда. Альтернативным решением может быть использование задачи <MSBuild>
. Это будет работать для вас, если у вас есть весь файл проекта в определенном каталоге или вы сможете легко перечислить все проекты, которые вы хотите построить (т. Е. Количество проектов в вашем решении не очень велико).
Например, этот файл msbuild будет строить каждый проект под вашим текущим каталогом, за исключением конкретного проекта:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<MyProjectReferences Include="**\*.*proj" />
<MyProjectReferences Exclude="Utilities\DTS Indexing Service\Tdi.Origami.IndexUpdaterServiceSetup\Tdi.Origami.IndexUpdaterServiceSetup.wixproj" />
</ItemGroup>
<Target Name="BuildAllExceptWixProject">
<MSBuild Projects="@(MyProjectReferences)" Targets="Build" />
</Target>
</Project>
Затем вы можете построить это с помощью командной строки msbuild <myproject> /t:BuildAllExceptWixProject
ProjectReference
только одна из групп, которая уже используется в стандартных целях Microsoft, что не делает это имя лучше, чем любое другое имя, о котором вы можете думать. Обратите внимание: в моем ответе не используются стандартные объекты Microsoft.
– seva titov
16 June 2016 в 20:26
Release
в качестве конфигурации решения, установите для всех конфигураций проекта значениеRelease
и снимите флажокBuild
дляTdi.Origami.IndexUpdaterServiceSetup
– The Chairman 20 March 2012 в 20:00