シェルスクリプトマガジン

POSIX原理主義の一時的書類(テンポラリーファイル)(vol.45掲載)

著者:シェルスクリプトマガジン編集部 松浦智之

会議室にはホワイトボードがあり、机の傍らにはメモ用紙がある。人はそこに、図や文字を書いたり消したりを繰り返すことで、考えを整理する。なぜなら人は、短期記憶の領域が狭いため、考察対象となる物事はホワイトボードや紙等に書き出しておかないと処理しきれないからだ。
そこは、人が創り出したコンピューターも似ている。一定以上の情報はCPU上に置いておけないため、メモリに変数という形で書き出し、それより大きいものはディスクにファイルという形で書き出しながら処理をする。特にUNIX では、ファイルを活用すると上手くいくようにデザインされている。
ところが、POSIX にはその、ホワイトボードやメモ用紙に相当する一時ファイル(テンポラリーファイル)を作るコマンドがない。何も考えずもちろん作るだけなら簡単なのだが、セキュリティーを確保しながら作るには一工夫がいる。今回は、一時ファイル作成時に必要なセキュリティーについて学び、これをPOSIXで実現する。

記事本文掲載のシェルスクリプトマガジンvol.45は以下リンク先でご購入できます。

 

mktempコマンドをPOSIX原理主義で書き直したものを作りました。
https://github.com/ShellShoccar-jpn/misc-tools/blob/master/mktemp