В отличие от Unix, оболочка командной строки Windows не выполняет деление слов и не удаляет кавычки; программа просто получает одну строку, содержащую всю командную строку. Это означает, что не все программы могут следовать одинаковым правилам цитирования.
В этом случае версия sed для GnuWin32 поддерживает только один стиль цитирования - "
двойные кавычки "
. Например, в моих тестах отлично работает следующее:
sed "s/foo/bar/"
Вы также можете получить sed
от Cygwin, наряду с более полной Unix-подобной системой: оболочки, редакторы, другие инструменты. Будет проще, если вы будете использовать оболочку Unix для обучения, чтобы избежать подобных проблем с синтаксисом в будущем.