一時ファイルの作成と削除(シェルプログラミング)

一時ファイルの作成

tmpfile=$(mktemp 一時ファイルテンプレート名)

一時ファイルの削除

rm -f "$tmpfile"

実際にはこれでは不十分で、全ての終了前ルートに仕込む必要があります。

異常時の一時ファイルの削除

trap 'rm -f "$tmpfile"' HUP INT QUIT TERM USR1 USR2

終了時に一時ファイルの削除

trap 'rm -f "$tmpfile"' EXIT

そのあたりまとめて削除する手順

atexit () {
    trap - EXIT
    rm -f "$tmpfile"
}

trap atexit EXIT HUP INT QUIT TERM USR1 USR2

参考文献

シェル/MakeAndRemoveTemporaryFile (last edited 2019-07-09 11:59:55 by NorikatsuShigemura)