Linux mempunyai fungsi untuk menentukan sama ada fail wujud; Fungsi kad bebas boleh memadankan senarai fail Jika tiada fail yang sepadan dengan corak yang ditentukan, fungsi akan kembali kosong dan sintaksnya ialah "$(PATTERN kad liar...)".
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
Adakah linux mempunyai fungsi untuk menentukan kewujudan fail?
Gunakan fungsi wildcard bagi makefile
ifneq ($(wildcard FILE,) #文件存在 endif
$(wildcard FILE) bermaksud pengembangan fail yang sepadan dengan fail FILE di bawah laluan semasa.
Anggapkan bahawa a.c dan b.c wujud dalam laluan semasa, kemudian jalankan src=$(wildcard *.c), nilai src ialah a.c b.c; , seperti src=$ (wildcard c.c); maka anda perlu mengembangkan fail bernama c.c di bawah laluan semasa Kerana fail tidak wujud di bawah laluan semasa, src ialah rentetan kosong.
Contohnya adalah seperti berikut:
Gunakan dua kaedah di atas untuk menentukan sama ada fail depend.mk dalam folder obj wujud Jika wujud, buat fail a.c dan b.c. Makefile yang ditulis oleh
adalah seperti berikut:
Selepas pelaksanaan, a.c dan b.c berjaya dibuat.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
Pembelajaran yang disyorkan:
Tutorial video LinuxAtas ialah kandungan terperinci Adakah Linux mempunyai fungsi untuk menentukan kewujudan fail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!