Я пытаюсь заменить строку в Makefile в Mac OS X для кросс-компиляции в iOS. Строка содержит встроенные двойные кавычки. Команда:
sed -i "" 's|"iphoneos-cross","llvm-gcc:-O3|"iphoneos-cross","clang:-Os|g' Configure
И ошибка:
sed: RE error: illegal byte sequence
Я пытался избежать двойных кавычек, запятых, тире и двоеточий без радости. Например:
sed -i "" 's|\"iphoneos-cross\"\,\"llvm-gcc\:\-O3|\"iphoneos-cross\"\,\"clang\:\-Os|g' Configure
У меня чертовски время отладить проблему. Кто-нибудь знает, как получить sed
для печати позиции незаконной последовательности байтов? Или кто-нибудь знает, что такое незаконная последовательность байтов?