我试图在Mac OS X上替换Makefile中的字符串,以便交叉编译到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
打印非法字节序列的位置吗?有人知道非法字节序列是什么吗?