linux有判断文件是否存在的函数;该函数为makefile的wildcard函数。wildcard函数可以匹配文件列表,若不存在符合指定模式的文件,函数会返回空,语法为“$(wildcard PATTERN…)”。

本教程操作环境:linux7.3系统、Dell G3电脑。
linux有判断文件存在的函数吗
linux有判断文件存在的函数
使用makefile的wildcard函数
ifneq ($(wildcard FILE,)
#文件存在
endif
$(wildcard FILE)的意思是当前路径下的FILE文件匹配的文件展开。
假设当前路径下存在a.c 和 b.c,那么执行src=$(wildcard *.c),src的值就为a.c b.c;
如果不使用通配符,比如src=$(wildcard c.c);那么就是要展开当前路径下,文件名为c.c的文件,因为当前路径下文件不存在,因此src为空字符串。
示例如下:
分别使用上述两种方法判断obj文件夹下depend.mk文件是否存在,存在的话创建a.c和b.c文件。
编写的makefile如下:
OBJ_DIR=obj
fileNames = $(wildcard $(OBJ_DIR)/depend.mk)
all:
@echo "this is all "
@echo ${fileNames}
@if [ -e $(OBJ_DIR)/depend.mk ]; then touch b.c; fi
ifneq ($(wildcard $(OBJ_DIR)/depend.mk),)
touch a.c
endif
执行完后,成功创建了a.c和b.c。

推荐学习:Linux视频教程
以上就是linux有判断文件存在的函数吗的详细内容,更多请关注模板之家(www.mb5.com.cn)其它相关文章!