2

コマンドの出力と終了コードをメイクファイルの変数に取得する方法を探しています。

基本的に私はこれが欲しい:(bash)

output=$(whoami)
returnval=$?
echo "OUT:"
echo $output
echo "RET:"
echo $returnval

メイクファイルにある

注: ルール セクションで機能する必要があります

ありがとう

編集:解決済み

$(eval OUTPUT_RC="$(shell whoami;echo $$?)")
$(eval OUTPUT="$(shell echo $(OUTPUT_RC) | sed -e "s/^\(.*\)\(.\{2\}\)$$/\1/")")
$(eval RC="$(shell echo $(OUTPUT_RC) | sed -e "s/^.*\(.\)$$/\1/")")
echo $(OUTPUT)
echo $(RC)
4

2 に答える 2

-1

GNU makeは、次のshellような関数を提供します。

OUTPUT=$(shell whoami)
OUTPUT_RC=$(shell whoami; echo $$?)
于 2012-06-22T13:42:53.877 に答える