| Portability | non-portable (requires POSIX) |
|---|---|
| Stability | provisional |
| Maintainer | libraries@haskell.org |
| Safe Haskell | Trustworthy |
System.Posix.Directory
Description
String-based POSIX directory support
- createDirectory :: FilePath -> FileMode -> IO ()
- removeDirectory :: FilePath -> IO ()
- data DirStream
- openDirStream :: FilePath -> IO DirStream
- readDirStream :: DirStream -> IO FilePath
- rewindDirStream :: DirStream -> IO ()
- closeDirStream :: DirStream -> IO ()
- data DirStreamOffset
- tellDirStream :: DirStream -> IO DirStreamOffset
- seekDirStream :: DirStream -> DirStreamOffset -> IO ()
- getWorkingDirectory :: IO FilePath
- changeWorkingDirectory :: FilePath -> IO ()
- changeWorkingDirectoryFd :: Fd -> IO ()
Creating and removing directories
createDirectory :: FilePath -> FileMode -> IO ()
createDirectory dir mode calls mkdir to
create a new directory, dir, with permissions based on
mode.
removeDirectory :: FilePath -> IO ()
Reading directories
data DirStream
openDirStream :: FilePath -> IO DirStream
openDirStream dir calls opendir to obtain a
directory stream for dir.
readDirStream :: DirStream -> IO FilePath
readDirStream dp calls readdir to obtain the
next directory entry (struct dirent) for the open directory
stream dp, and returns the d_name member of that
structure.
rewindDirStream :: DirStream -> IO ()
rewindDirStream dp calls rewinddir to reposition
the directory stream dp at the beginning of the directory.
closeDirStream :: DirStream -> IO ()
closeDirStream dp calls closedir to close
the directory stream dp.
data DirStreamOffset
seekDirStream :: DirStream -> DirStreamOffset -> IO ()
The working dirctory
getWorkingDirectory :: IO FilePath
getWorkingDirectory calls getcwd to obtain the name
of the current working directory.
changeWorkingDirectory :: FilePath -> IO ()
changeWorkingDirectory dir calls chdir to change
the current working directory to dir.
changeWorkingDirectoryFd :: Fd -> IO ()