Добавьте свойство в файл проекта .csproj, например:
<PropertyGroup>
<FromMSBuild>false</FromMSBuild>
</PropertyGroup>
Затем в задачу, которую вы хотите запустить, поместите условие, которое оценивает это свойство.Например, если вы хотите открывать notepad.exe всякий раз, когда сборка выполняется из командной строки, а НЕ из Visual Studio:
<Target Name="BeforeBuild">
<Exec Command="C:\Windows\Notepad.exe" Condition="$(FromMSBuild)" />
</Target>
Конечно, это зависит от правильной установки свойства $ (FromMSBuild), когда вызапустить сборку через командную строку, вот так:
MSBuild myProject.csproj /p:FromMSBuild=true