2010-02-10 90 views
1

在我的日常構建項目中,我們將它的庫存儲到它的版本名稱dir中。 。
對於最新的一個,我們正在創建符號鏈接作爲'最新'。 ex.-makefile鏈接目錄/文件名

ls -ltr 
drw-r--r-- 1 4096 2010-02-10 16:34 abc7.2.0 
drw-r--r-- 1 4096 2010-02-10 16:34 abc7.2.1 
drw-r--r-- 1 4096 2010-02-10 16:34 abc7.2.2 
drw-r--r-- 1 4096 2010-02-10 16:34 abc7.2.3 
lrwxrwxrwx 1 8 2010-02-10 16:34 LATEST -> abc7.2.3 

現在,在makefile中,我想要得到dir。 LATEST鏈接到的名稱?
在此先感謝。 :-)

回答

2

您可以使用shell的功能獲取鏈接值。在外殼您可以鍵入

$ readlink LATEST 
abc7.2.3 

所以在生成文件你可以調用shell命令來獲取實際值。這會將鏈接目標存儲爲值變量。 。

value=$(shell readlink LATEST) 

注意,它不比較工作,以工作目錄,而相反,到目錄的符號鏈接是

我也是一個不可忽視的question與鏈接有關的問題;它可能對你有用。

+0

使用$(realpath)https://www.gnu.org/software/make/manual/html_node/File-Name-Functions.html – 2017-07-26 12:49:36