2016-05-01 10 views
2

tempfileモジュールを使用して、ファイルを生成し、/tmp/myfolder/に保管しておき、特定の時間(多分数日)までそこに保管します。私はがf.close()が実行されるとすぐにファイルを削除することを知りました。私はちょうどそれが自動削除するようにしたくありません。後で削除されます。これはtempfileで可能ですか?または他のよりよいアプローチ?定義された期間、Pythonの一時ファイルとフォルダを永続化する方法はありますか?

+0

あなたは、もちろん、 '/ tmp'にフォルダを作成して、独自のファイルが存在して維持/書くことは自由です。とにかく 'tempfile'はあなたのユースケースに適していません。また、私はモジュール[seqfile](https://pypi.python.org/pypi/seqfile)を書いています。これにより、他のスレッド/プロセスによって書き込まれているファイルを上書きすることなく、ディスク上のファイルに書き込むことができます。 –

+0

あなたが望むものは、['tempfile.NamedTemporaryFile'](https://docs.python.org/3/library/tempfile.html#tempfile.NamedTemporaryFile) – styvane

+1

です。ファイルを保持したいのであれば、それは良い考えではありませんそれらを '/ tmp'に格納します。 – cdarke

答えて

2

あなたはthisを使用することができます。

import tempfile 
with tempfile.NamedTemporaryFile(delete=False, dir='/tmp/myfolder') as outfile: 
    # ... 
+0

OPで、の日数後に自動削除するコードがあると思われますか? – smci

+0

@smci:1年前にOPが望んでいたことを推測してはいけません。関連する質問がある場合は、別々に投稿してください。 –

+0

投機ではありません。 OPが書いたものを読んでください** "一定の時間(たぶん数日)までそこに保管しておきます...私はファイルを閉じる時に自動的に削除したくありません。したがって、あなたの答えは、その要件に完全に対応していません。 – smci

関連する問題