您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“linux有沒有判斷文件存在的函數”,內容詳細,步驟清晰,細節處理妥當,希望這篇“linux有沒有判斷文件存在的函數”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
linux有判斷文件是否存在的函數;該函數為makefile的wildcard函數。wildcard函數可以匹配文件列表,若不存在符合指定模式的文件,函數會返回空,語法為“$(wildcard PATTERN…)”。
本教程操作環境:linux7.3系統、Dell G3電腦。
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有沒有判斷文件存在的函數”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。