我正在make一個makefile,我正在處理沒有依賴關係的目標,它檢查當前目錄中是否存在一個名爲README的文件,如果它存在,讀取它使用less或者退出exit:不要發生任何錯誤 - 如果是這種情況,運行目標的命令應該不會打印任何內容。使用Makefile的Word意外(期待「)」)
我已經嘗試了幾種不同的方法,但沒有什麼似乎工作(PAGER是一個簡單的無功等於):
read :
ifneq ("$(wildcard README)","")
[email protected]$(PAGER) README
endif
而且也與此代碼
read :
[email protected] file in *;\
do \
if [ ${file} == "README" ]; then\
$(PAGER) "README" ;\
fi;\
done
隨着第一個塊我繼續得到類似於/ bin/sh的錯誤:語法錯誤:單詞意外(期待「)」),對於我的生活,我只是不明白它的意思。我當然不認爲有語法錯誤,也許我濫用make。
對於後面的代碼,我得到了一個意外的運算符錯誤==。
我也試着像這兩個單排的解決方案簡單的事情,但得到類似的錯誤:
[email protected] -a README && less README
[email protected][ -a README ] && less README
任何幫助將不勝感激。
編輯:我正在進一步挖掘,看到了一些有前途的東西,並明確地將我的外殼設置爲/ bin/bash(SHELL:=/bin/bash),但沒有骰子。
@LubošTurek在刪除標籤之前,您應該檢查他們的wiki是如何使用它的。目前它提到'less'作爲UNIX命令的用法。見http://stackoverflow.com/tags/less/info – fedorqui 2017-05-03 08:17:17