それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

一時ファイルを作るコマンドmktemp

ruby には tempfile や tmpdir があって、一時フォルダを活用できる.

ソレと同様のコマンドが存在します。


mktemp で一時フォルダファイルを作成

takuya@air:~/Desktop$ mktemp
/var/folders/ff/fc49g5wd6xncjylvwy4tdygc0000gn/T/tmp.U2GM6EanA1


mktemp は ENV["temp"] や、プロセスIDでファイル名に付けられたり、prefixが付けられたりするけど、
殆どの場合は、一時フォルダファイルを作れば、用途に足るで、仔細には踏み込まない。


使用例

一時ファイル名を作ります。

FILE=`mktemp`
cat data.txt | sort | uniq > $FILE

ファイル名を指定したりする

ファイルの拡張子を指定して、一時ファイルを作成するには次のようにする。

temp=$(/usr/local/bin/mktemp --suffix=.png)

他の言語の場合

rubyの場合

  • tempdir
  • tmpfile

php の場合

  • tempnam
  • tempfile


などがそれぞれのプログラミング言語から使える

2014-12-13 追記

ファイル名のsuffixについて記述した

2016-10-24

template や dry-run 使ったほうが便利なので書き直した。
linuxで一時的なパス名を作る、mktemp コマンド の使い方 - それマグで!