He,
我想將一個文件(包含相對文件路徑)的內容讀取到一個變量並在文件的每一行前加上一條路徑。然後將所有這些文件複製到一個目錄中。 像這樣:
$(httpd_DIR)/my.tar: $(mypath)/html.txt
rm -rf web
mkdir -p web
VV = $(addprefix $(httpd_DIR)/, $(shell cat $(mypath)/html.txt))
cp -R $$VV $(httpd_DIR)/web
$(TAR) -C $(httpd_DIR) -cvf $(httpd_DIR)/web.tar web
的$(mypath中)/html.txt文件中包含這樣的相對文件路徑的列表:
DIR1 /的file1.html
DIR2/file2.html
DIR3/file3.html
出於某種原因,我得到的跟隨着錯誤:
/斌/慶典:VV:找不到命令
我不是想要執行VV,那麼爲什麼要給我這個錯誤呢?
請注意,如果我取消註釋cp命令,我仍然會得到相同的錯誤... 我在Linux PC上使用GNU make。
很好解釋。另一個問題是命令不會創建目標文件。正如所寫,命令更新web.tar,而不是my.tar。 – Idelic
@愛德華:好點。直到我引入自動變量(這是改進這個makefile的下一步)之前,我通常不會注意到這樣的錯誤。 – Beta
他,非常感謝這個信息,它非常有幫助!我也會檢查自動變量。 – user1900375