web-dev-qa-db-ja.com

Linuxメイクファイルの環境変数に日付と時刻を追加する

Makefileで、現在の日時を使用して環境変数を作成します。疑似コード:

LOG_FILE := $LOG_PATH + $SYSTEM_DATE + $SYSTEM_TIME

助けてくれてありがとう-ありがとう。

21
ng5000

あなたはこれを使うことができます:

LOGFILE=$(LOGPATH) `date +'%y.%m.%d %H:%M:%S'`

注(コメントから):

lOGFILEは、使用中に毎回評価されます。それを避けるために:

LOGFILE=$(LOGPATH)$(Shell date)
26
catwalk

Makeで$(Shell operation)コマンドを使用する必要があります。 operationを使用すると、シェルコマンドは毎回評価されます。ログファイルに書き込む場合、1つのmakeコマンドでアクセスするたびにログファイル名が変更されるのは望ましくありません。

LOGPATH = logs
LOGFILE = $(LOGPATH)/$(Shell date --iso=seconds)

test_logfile:
    echo $(LOGFILE)
    sleep 2s
    echo $(LOGFILE)

これは出力します:

echo logs/2010-01-28T14:29:14-0800
logs/2010-01-28T14:29:14-0800
sleep 2s
echo logs/2010-01-28T14:29:14-0800
logs/2010-01-28T14:29:14-0800
35
Aaron

「日付」コマンドを使用できます

1
Himanshu