In this chapter, we will cover following recipes:
- Traversing folders—recursively traversing a path in the filesystem and inspecting its contents
- Working with paths—building paths in a system-independent way
- Expanding filenames—finding all files that match a specific pattern
- Getting file information—detecting the properties of a file or directory
- Named temporary files—working with temporary files that you need to access from other processes too
- Memory and disk buffer—spooling a temporary buffer to disk if it's bigger than a threshold
- Managing filename encoding—working with the encoding of filenames
- Copying a directory—copying the content of a whole directory
- Safely replacing a file's content—how to replace the content of a file safely in case of failures