求高手帮我写一个http请求 脚本如何写

哪位高手帮看一个shell脚本
我对shell不熟悉,能看懂一点,这个是mk文件中的内容,哪位给小弟解释一下。
###====&new&====###
#traverse all the directory and subdirectory
define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
#traverse Classes Directory
ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)
FILE_LIST := hellocpp/main.cpp
FILE_LIST += $(filter %.cpp, $(ALLFILES))
FILE_INCLUDES := $(shell find $(LOCAL_PATH)/../../Classes -type d)
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
define walk是定义了一个函数吧,那里边的函数怎么解释啊,主要说下这句话,先谢啦。
#widcard为扩展通配符
#遍历目录和子目录
define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
#遍历路径Classes下得目录和子目录文件,并存入ALLFILES变量中
ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)
#从ALLFILES目录中提取文件,并存入FILE_LIST中
#.cc是Linux/Unix下为C++源文件的默认扩展名,与.cpp一个意思
#.c 因为我要用到sqlite3.c
FILE_LIST := hellocpp/main.cpp
FILE_LIST += $(filter %.cpp, $(ALLFILES))
FILE_LIST += $(filter %.c, $(ALLFILES))
FILE_LIST += $(filter %.cc, $(ALLFILES))
#搜索Classes下的子目录文件
FILE_INCLUDES += $(shell find $(LOCAL_PATH)/../../Classes -type d)
#根据搜索到的文件名 编译资源文件
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
#提供搜索文件的路径
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
$(FILE_INCLUDES) \
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
引用来自“stefanzhlg”的评论#widcard为扩展通配符
#遍历目录和子目录
define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
#遍历路径Classes下得目录和子目录文件,并存入ALLFILES变量中
ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)
#从ALLFILES目录中提取文件,并存入FILE_LIST中
#.cc是Linux/Unix下为C++源文件的默认扩展名,与.cpp一个意思
#.c 因为我要用到sqlite3.c
FILE_LIST := hellocpp/main.cpp
FILE_LIST += $(filter %.cpp, $(ALLFILES))
FILE_LIST += $(filter %.c, $(ALLFILES))
FILE_LIST += $(filter %.cc, $(ALLFILES))
#搜索Classes下的子目录文件
FILE_INCLUDES += $(shell find $(LOCAL_PATH)/../../Classes -type d)
#根据搜索到的文件名 编译资源文件
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
#提供搜索文件的路径
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
$(FILE_INCLUDES) \
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
如果我想要在匹配的classes目录下去掉某一个子目录怎么办,就是不匹配某一个目录,比如Classes下有五个目录,A,B,C,D,E如果采用上面的方法这五个目录下的文件都可以匹配,现在我有E下的目录不想匹配,怎么办啊,求指点一下。
引用来自“stefanzhlg”的评论#widcard为扩展通配符
#遍历目录和子目录
define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
#遍历路径Classes下得目录和子目录文件,并存入ALLFILES变量中
ALLFILES = $(call walk, $(LOCAL_PATH)/../../Classes)
#从ALLFILES目录中提取文件,并存入FILE_LIST中
#.cc是Linux/Unix下为C++源文件的默认扩展名,与.cpp一个意思
#.c 因为我要用到sqlite3.c
FILE_LIST := hellocpp/main.cpp
FILE_LIST += $(filter %.cpp, $(ALLFILES))
FILE_LIST += $(filter %.c, $(ALLFILES))
FILE_LIST += $(filter %.cc, $(ALLFILES))
#搜索Classes下的子目录文件
FILE_INCLUDES += $(shell find $(LOCAL_PATH)/../../Classes -type d)
#根据搜索到的文件名 编译资源文件
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
#提供搜索文件的路径
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
$(FILE_INCLUDES) \
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
引用来自“小塔_皂荚花”的评论如果我想要在匹配的classes目录下去掉某一个子目录怎么办,就是不匹配某一个目录,比如Classes下有五个目录,A,B,C,D,E如果采用上面的方法这五个目录下的文件都可以匹配,现在我有E下的目录不想匹配,怎么办啊,求指点一下。
可以根据文件夹的命名规则排除。
--- 共有 3 条评论 ---
: 多谢!!!
希望加个Q请教一下,可以么?2008年12月 Linux/Unix社区大版内专家分月排行榜第二
2009年3月 Linux/Unix社区大版内专家分月排行榜第三
2013年7月 Linux/Unix社区大版内专家分月排行榜第二2012年6月 Linux/Unix社区大版内专家分月排行榜第二2011年5月 Linux/Unix社区大版内专家分月排行榜第二2011年4月 Linux/Unix社区大版内专家分月排行榜第二2011年3月 Linux/Unix社区大版内专家分月排行榜第二2010年10月 Linux/Unix社区大版内专家分月排行榜第二2010年9月 Linux/Unix社区大版内专家分月排行榜第二
2011年9月 Linux/Unix社区大版内专家分月排行榜第三2010年12月 Linux/Unix社区大版内专家分月排行榜第三2010年11月 Linux/Unix社区大版内专家分月排行榜第三2010年9月 C/C++大版内专家分月排行榜第三
2013年7月 Linux/Unix社区大版内专家分月排行榜第二2012年6月 Linux/Unix社区大版内专家分月排行榜第二2011年5月 Linux/Unix社区大版内专家分月排行榜第二2011年4月 Linux/Unix社区大版内专家分月排行榜第二2011年3月 Linux/Unix社区大版内专家分月排行榜第二2010年10月 Linux/Unix社区大版内专家分月排行榜第二2010年9月 Linux/Unix社区大版内专家分月排行榜第二
2011年9月 Linux/Unix社区大版内专家分月排行榜第三2010年12月 Linux/Unix社区大版内专家分月排行榜第三2010年11月 Linux/Unix社区大版内专家分月排行榜第三2010年9月 C/C++大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。

参考资料

 

随机推荐