Last Updated: May 22, 2026
Real programs need scratch space. An uploaded customer profile photo has to land somewhere before the resize service decides whether to keep it, a daily sales summary should never be visible to readers until it is fully written, and an order-processor test wants a clean directory it can create and tear down without leaking files between runs. Go's os package gives you CreateTemp and MkdirTemp for exactly these jobs, along with a small set of conventions that make temporary storage safe instead of accidentally permanent. This lesson covers how to create temporary files and directories, how to clean them up reliably, and the atomic-write pattern that keeps partially written data from being seen by anyone else.