いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Makefileでコマンド実行に失敗しても継続する (ハイフン)

関連記事

GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ

概要

以下、自分用のメモです。よく忘れるのでここにメモメモ。。。

Makefileにて、コマンドの実行に失敗すると通常そこで処理が止まります。

そのまま継続させたい場合は、以下のように先頭に「ハイフン」を付与すると継続してくれます。

run:
    -ls /path/to/not_exists

Taskの場合は ignore_error: true を付与すれば同じことになりますね。

run:
  cmds:
    - cmd: ls /path/to/not_exists
      ignore_error: true

サンプル

Makefile

run1:
        @ls /path/to/not_exists
        @echo "ここには来ない"
run2:
        -@ls /path/to/not_exists
        @echo "ここに来る"

実行結果

$ make run1
ls: '/path/to/not_exists' にアクセスできません: そのようなファイルやディレクトリはありません
make: *** [Makefile:2: run1] エラー 2

$ make run2
ls: '/path/to/not_exists' にアクセスできません: そのようなファイルやディレクトリはありません
make: [Makefile:5: run2] エラー 2 (無視されました)
ここに来る

参考情報


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。