sed 批量修改Makefile文件
Makefile文件太多
[[email protected] DarwinStreamingSrvr6.0.3-Source]# find -name Makefile.POSIX ./APIModules/QTSSDemoAuthorizationModule.bproj/Makefile.POSIX ./APIModules/QTSSDemoRedirectModule.bproj/Makefile.POSIX ./APIModules/QTSSHomeDirectoryModule/Makefile.POSIX ./APIModules/QTSSRawFileModule.bproj/Makefile.POSIX ./APIModules/QTSSRefMovieModule/Makefile.POSIX ./APIModules/QTSSSpamDefenseModule.bproj/Makefile.POSIX ./CommonUtilitiesLib/Makefile.POSIX ./HTTPUtilitiesLib/Makefile.POSIX ./Makefile.POSIX ./MP3Broadcaster/Makefile.POSIX ./PlaylistBroadcaster.tproj/Makefile.POSIX ./QTFileLib/Makefile.POSIX ./QTFileTools/QTBroadcaster.tproj/Makefile.POSIX ./QTFileTools/QTFileInfo.tproj/Makefile.POSIX ./QTFileTools/QTFileTest.tproj/Makefile.POSIX ./QTFileTools/QTRTPFileTest.tproj/Makefile.POSIX ./QTFileTools/QTRTPGen.tproj/Makefile.POSIX ./QTFileTools/QTSampleLister.tproj/Makefile.POSIX ./QTFileTools/QTSDPGen.tproj/Makefile.POSIX ./QTFileTools/QTTrackInfo.tproj/Makefile.POSIX ./qtpasswd.tproj/Makefile.POSIX ./StreamingLoadTool/Makefile.POSIX ./StreamingProxy.tproj/Makefile.POSIX [[email protected]
經過查看之後,大多數文件內容格式如下:
.cpp.o: $(C++) -c -o $*.o $(DEFINES) $(C++FLAGS) $*.cpp .c.o: $(CC) -c -o $*.o $(DEFINES) $(CCFLAGS) $*.c
執行批量更換
[[email protected] DarwinStreamingSrvr6.0.3-Source]# find -name Makefile.POSIX | xargs sed -i ‘/.cpp.o/a\\t$(C++) -E -o $*.i $(DEFINES) $(C++FLAGS) $*.cpp‘ [[email protected]