Мне нужно изменить источники под контролем версий Git. Источниками являются файлы проекта Visual Studio, что делает их родными для Microsoft. Я хочу избежать проблем с пробелами, включая игры с окончанием строки.
Я посмотрел на файлы до модификации под emacs, и ^M
явно не присутствовал.
Затем я выполнил следующее из сценария с машины Linux:
sed -i 's/odbc32.lib //g' *.vcproj
sed -i 's/odbccp32.lib //g' *.vcproj
Когда я смотрю на изменения:
$ git diff cryptest.vcproj
diff --git a/cryptest.vcproj b/cryptest.vcproj
index cec447d..9ae71ea 100644
--- a/cryptest.vcproj
+++ b/cryptest.vcproj
@@ -76,7 +76,7 @@
...
Name="VCLinkerTool"
- AdditionalDependencies="odbc32.lib odbccp32.lib Ws2_32.lib"
+ AdditionalDependencies="Ws2_32.lib"^M
SuppressStartupBanner="true"
...
Как выполнить замену без добавления посторонних пробелов?