我有一个makefile(为Linux上的gmake开发),我试图移植到OSX,但它似乎像sed不想合作。 我所做的是使用GCC自动生成依赖文件,然后使用sed稍微调整它们。 makefile的相关部分: $(OBJ_DIR)/%.d: $(SRC_DIR)/%.cpp $(CPPC) -MM -MD $< -o $@ sed -i 's|\(.*\)\.o:|$(OBJ_DIR)/\1.o $(OBJ_DIR)/\1.d $(TEST_OBJ_DIR)/\1_utest.o:|' $@ 虽然在GNU / Linux下运行时没有问题,但是在尝试在OSX上构build时遇到以下错误: sed: 1: "test/obj/equipmentConta …": undefined label 'est/obj/equipmentContainer_utest.d' sed: 1: "test/obj/dice_utest.d": undefined label 'est/obj/dice_utest.d' sed: 1: "test/obj/color-string_u …": undefined label 'est/obj/color-string_utest.d' 看起来sed正在砍掉一个angular色,但我看不到解决scheme。
我对Sed一无所知,但是需要这个命令(在Ubuntu上可以正常工作)在Mac OSX上工作: sed -i "/ $domain .*#drupalpro/d" /etc/hosts 我越来越: sed: 1: "/etc/hosts": extra characters at the end of h command