私は持っていますいくつかのスクリプト以下を含む行がわかりません$(1)
。
wget --retry-connrefused --waitretry=5 --read-timeout=30 --tries=50 --no-dns-cache https://dataverse.harvard.edu/api/access/datafile/:persistentId?persistentId=doi:$(1) -O data/tmp.tar.gz
何を示しますか$(1)
?
答え1
$(1)
GNU make "function"の最初のパラメータです。変える次のように解釈されます。call
機能:
define dataverse_download
wget --retry-connrefused --waitretry=5 --read-timeout=30 --tries=50 --no-dns-cache https://dataverse.harvard.edu/api/access/datafile/:persistentId?persistentId=doi:$(1) -O data/tmp.tar.gz
cd data && tar -xzf tmp.tar.gz
rm -f data/tmp.tar.gz
endef
download_wget:
mkdir -p data
$(call dataverse_download,10.7910/DVN/IA8UOS/URG8XN)
$(call dataverse_download,10.7910/DVN/IA8UOS/1DBE7K)
$(call dataverse_download,10.7910/DVN/IA8UOS/34QRHK)
dataverse_download
これは、最初の引数として提供されたDOIに一致するデータファイルをダウンロードする関数を定義し、download_wget
それらを組み合わせる方法を示しています。$(call)
機能。